Smart alerts in a tracking device environment

ABSTRACT

A tracking system can provide smart alerts based on a user&#39;s location. The tracking system can receive a location of a user&#39;s mobile device and establish a geographic boundary around the location if the mobile device remains at the location for a threshold amount of time. The tracking system can receive a new location of the mobile device outside of the geographic boundary and configure the mobile device to scan for a tracking device associated with the user for an interval of time. If the tracking system detects the tracking device within the interval, the tracking system stores information indicating that the user possesses the tracking device. Otherwise, the tracking system sends an indication to the mobile device indicating that the user has left behind the tracking device.

BACKGROUND

This disclosure relates generally to tracking devices, and morespecifically, to sending smart alerts based on a location of a userassociated with a tracking device.

Users can attach tracking devices to one or more personal objects, suchas keys, a phone, a car, a briefcase, and the like. The tracking devicecan communicatively couple to a mobile device of the user (or of acommunity member), and the mobile device can, in response to receiving acommunication from the tracking device, determine a location of themobile device (for instance, via a GPS receiver). The mobile device canthen provide an identifier for the tracking device and the determinedlocation of the mobile device to a cloud server, which can associate thetracking device with the determined location of the mobile device.

Tracking devices may move around with a user as they go about theirdaily activities, for instance when coupled (i.e., attached) to a laptopor included in a wallet. Users may sometimes accidentally leave acoupled object at various locations without realizing their error beforetravelling far away or forgetting where they last had possession of thecoupled object. For example, a user may realize they left their coupledwallet at a store at a mall and may need to call multiple stores at themall to determine which one has their wallet. This requires proactiveaction on behalf of the user, and the user is at risk of being unable toretrieve their lost item due to the time lapse between the loss andtheir realization of the loss. Thus, there is a need to be able toautomatically be notified when the user does not possess an item coupledto a tracking device to prevent accidental loss of the item andinconvenience for the user.

SUMMARY

A tracking system can provide smart alerts to a mobile device based ondetection of a tracking device associated with a user of the mobiledevice. A user can attach a tracking device to or enclose a trackingdevice in an object, such as a wallet, keys, a car, a bike, a pet, orany other object that the user wants to track. The user can then use amobile device (e.g., by way of a software application installed on themobile device) or other device or service to connect to the trackingdevice. The tracking system can establish a geographic boundary at alocation of the mobile device when the user, along with their trackingdevice, has been there for a threshold amount of time.

The tracking system can configure the mobile device when the usercrosses the geographic boundary to leave the location. For example, oncea user exits a location bounded by a geographic boundary, a trackingsystem may send a configuration instruction o the mobile device to scanfor the tracking device for an interval of time. If the mobile devicedetects the tracking device within the time interval, the trackingsystem stores information inciting the user has the tracking device. Ifnot, the tracking system sends a smart alert to the mobile deviceindicating that the user has left the tracking device behind.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example tracking system environment in which atracking device can operate, according to one embodiment.

FIG. 2 illustrates an example tracking system for use in a trackingsystem environment, according to one embodiment.

FIG. 3 illustrates an example user mobile device for use in a trackingsystem environment, according to one embodiment.

FIG. 4 illustrates an example community mobile device for use in atracking system environment, according to one embodiment.

FIG. 5 illustrates an example tracking device for use in a trackingsystem environment, according to one embodiment.

FIG. 6 illustrates a flowchart for a method of identifying a trackingdevice as potentially lost based on a threshold distance from a targetdevice, according to one embodiment.

FIG. 7 illustrates a flowchart for a method of identifying a trackingdevice as potentially lost based on a threshold distance from ageographic location, according to one embodiment.

FIG. 8 illustrates a flowchart for a method of identifying a trackingdevice as potentially lost based on historical movement behavior,according to one embodiment.

FIG. 9 illustrates a flowchart for a method of identifying a trackingdevice as potentially useful to user based on external data, accordingto one embodiment.

FIG. 10 illustrates a flowchart for a method of identifying a trackingdevice as potentially lost based on sensor data, according to oneembodiment.

FIG. 11 illustrates a flowchart for a method of generating an opt-innotification for identifying a tracking device as potentially lost,according to one embodiment.

FIGS. 12A, 12B, and 12C illustrate an example of sending an indicationto a mobile device upon detecting a tracking device has been left behindwithin a time interval, according to one embodiment.

FIG. 13 illustrates a flowchart for a method of notifying a user that atracking device may be left behind, according to one embodiment.

The figures depict various embodiments of the present invention forpurposes of illustration only. One skilled in the art will readilyrecognize from the following discussion that alternative embodiments ofthe structures and methods illustrated herein may be employed withoutdeparting from the principles of the invention described herein.

DETAILED DESCRIPTION

Environment Overview

Embodiments described herein detail functionality associated with atracking device. A user can attach a tracking device to or enclose thetracking device within an object, such as a wallet, keys, a car, a bike,a pet, or any other object that the user wants to track. The user canthen use a mobile device (e.g., by way of a software applicationinstalled on the mobile device) or other device or service to track thetracking device and corresponding object. For example, the mobile devicecan perform a local search for a tracking device attached to a near-byobject. However, in situations where the user is unable to locate thetracking device using their own mobile device (e.g., if the trackingdevice is beyond a distance within which the mobile device and thetracking device can communicate), the user can leverage the capabilitiesof a community of users of a tracking device system.

In particular, a tracking system (also referred to herein as a “cloudserver” or simply “server”) can maintain user profiles associated with aplurality of users of the tracking device system. The tracking systemcan associate each user within the system with one or more trackingdevices associated the user (e.g., tracking devices that the user haspurchased and is using to track objects owned by the user). If theuser's object becomes lost or stolen, the user can send an indicationthat the tracking device is lost to the tracking system, which is incommunication with one or more mobile devices associated with thecommunity of users in communication with the system. The tracking systemcan set a flag indicating the tracking device is lost. When one of acommunity of mobile devices that are scanning for nearby trackingdevices and providing updated locations to the tracking systemidentifies a flagged tracking device, the tracking system can associatethe received location with the flagged tracking device, and relay thelocation to a user of the tracking device, thereby enabling the user tolocate the lost tracking device.

As used herein, the terms “coupled,” “connected,” and “paired” may attimes be used interchangeably to refer to a wireless connection betweentwo devices, such as between the tracking device and the mobile device.Further, the terms “attached,” “coupled,” and “connected” may at timesbe used interchangeably to refer to a physical connection between twoobjects, such as a tracking device and an object a user wants to track.

FIG. 1 illustrates an example tracking system environment in which atracking device can operate, according to one embodiment. Theenvironment of FIG. 1 includes a tracking system 100 communicativelycoupled to a mobile device 102 associated with the user 103 via a firstnetwork 108. The tracking system 100 is also communicatively coupled toa plurality of community mobile devices 104 a through 104 n(collectively referred to herein as “community mobile devices 104”)associated with a plurality of users 105 a through 105 n of the trackingsystem 100 (collectively referred to herein as “community users 105”)via the first network 108. As will be explained in more detail below,the tracking system 100 can allow the user 103 to manage and/or locate atracking device 106 associated with the user 103. In some embodiments,the tracking system 100 leverages the capabilities of community mobiledevices 104 to locate the tracking device 106 if the location of thetracking device is unknown to the user 103 and beyond the capabilitiesof mobile device 102 to track. In some configurations, the user 103 mayown and register multiple tracking devices 106. Although FIG. 1illustrates a particular arrangement of the tracking system 100, mobiledevice 102, community mobile devices 104, and tracking device 106,various additional arrangements are possible. FIG. 1 also illustrates anexternal data source 112 that is communicatively coupled to the trackingsystem 100 to provide additional, external data to the tracking system100, as is discussed further below. Examples of external data sourcesinclude: social networking systems, messaging systems, calendaringsystems, banking systems, budgeting systems, vendor systems, onlineretailers, parking regulation databases, weather service, travel agency,transportation services, ride-sharing systems, geo-locating systems,contact management systems, and the like.

In some configurations, the user 103 may be part of the community ofusers 105. Further, one or more users 105 may own and register one ormore tracking devices 106. Thus, any one of the users within thecommunity of users 105 can communicate with tracking system 100 andleverage the capabilities of the community of users 105 in addition tothe user 103 to locate a tracking device 106 that has been lost.

The tracking system 100, mobile device 102, and plurality of communitymobile devices 104 may communicate using any communication platforms andtechnologies suitable for transporting data and/or communicationsignals, including known communication technologies, devices, media, andprotocols supportive of remote data communications.

In certain embodiments, the tracking system 100, mobile device 102, andcommunity mobile devices 104 may communicate via a network 108, whichmay include one or more networks, including, but not limited to,wireless networks (e.g., wireless communication networks), mobiletelephone networks (e.g., cellular telephone networks), closedcommunication networks, open communication networks, satellite networks,navigation networks, broadband networks, narrowband networks, theInternet, local area networks, and any other networks capable ofcarrying data and/or communications signals between the tracking system100, mobile device 102, and community mobile devices 104. The mobiledevice 102 and community of mobile devices 104 may also be incommunication with a tracking device 106 via a second network 110. Thesecond network 110 may be a similar or different type of network as thefirst network 108. In some embodiments, the second network 110 comprisesa wireless network with a limited communication range, such as aBluetooth or Bluetooth Low Energy (BLE) wireless network. In someconfigurations, the second network 110 is a point-to-point networkincluding the tracking device 106 and one or more mobile devices thatfall within a proximity of the tracking device 106. In such embodiments,the mobile device 102 and community mobile devices 104 may only be ableto communicate with the tracking device 106 if they are within a closeproximity to the tracking device, though in other embodiments, thetracking device can use long-distance communication functionality (forinstance, a GSM transceiver) to communicate with either a mobile device102/104 or the tracking system 100 at any distance. In someconfigurations, the mobile device 102 and one or more community mobiledevices 104 may each be associated with multiple tracking devicesassociated with various users.

As mentioned above, FIG. 1 illustrates the mobile device 102 associatedwith the user 103. The mobile device 102 can be configured to performone or more functions described herein with respect to locating trackingdevices (e.g., tracking device 106). For example, the mobile device 102can receive input from the user 103 representative of information aboutthe user 103 and information about a tracking device 106. The mobiledevice 102 may then provide the received user information, trackingdevice information, and/or information about the mobile device 102 tothe tracking system 100. Accordingly, the tracking system 100 is able toassociate the mobile device 102, the user 103, and/or the trackingdevice 106 with one another. In some embodiments, the mobile device 102can communicate with the tracking device 106 and provide informationregarding the location of the tracking device to the user 103. Forexample, the mobile device 102 can detect a communication signal fromthe tracking device 106 (e.g., by way of second network 110) as well asa strength of the communication signal or other measure of proximity todetermine an approximate distance (and/or a relative direction) betweenthe mobile device 102 and the tracking device 106. The mobile device 102can then provide this information to the user 103 (e.g., by way of oneor more graphical user interfaces) to assist the user 103 to locate thetracking device 106. Accordingly, the user 103 can use the mobile device102 to track and locate the tracking device 106 and a correspondingobject associated with the tracking device 106. If the mobile device 102is located beyond the immediate range of communication with the trackingdevice 106 (e.g., beyond the second network 110), the mobile device 102can be configured to send an indication that a tracking device 106 islost to the tracking system 100, requesting assistance in finding thetracking device. The mobile device 102 can send an indication of a lostdevice in response to a command from the user 103. For example, once theuser 103 has determined that the tracking device 106 is lost, the usercan provide user input to the mobile device 102 (e.g., by way of agraphical user interface), requesting that the mobile device 102 send anindication that the tracking device 106 is lost to the tracking system100. In some examples, the lost indication can include informationidentifying the user 103 (e.g., name, username, authenticationinformation), information associated with the mobile device 102 (e.g., amobile phone number), information associated with the tracking device(e.g., a unique tracking device identifier), or a location of the user(e.g., a GPS location of the mobile device 102 at the time the requestis sent).

The tracking system 100 can be configured to provide a number offeatures and services associated with the tracking and management of aplurality of tracking devices and/or users associated with the trackingdevices. For example, the tracking system 100 can manage informationand/or user profiles associated with user 103 and community users 105.In particular, the tracking system 100 can manage information associatedwith the tracking device 106 and/or other tracking devices associatedwith the user 103 and/or the community users 105.

As mentioned above, the tracking system 100 can receive an indicationthat the tracking device 106 is lost from the mobile device 102. Thetracking system 100 can then process the indication in order to help theuser 103 find the tracking device 106. For example, the tracking system100 can leverage the capabilities of the community mobile devices 104 tohelp find the tracking device 106. In particular, the tracking system100 may set a flag for a tracking device 106 to indicate that thetracking device 106 lost and monitor communications received from thecommunity mobile devices 104 indicating the location of one or moretracking devices 106 within proximity of the community mobile devices104. The tracking system 100 can determine whether a specific locationis associated with the lost tracking device 106 and provide any locationupdates associated with the tracking device 106 to the mobile device102. In one example, the tracking system may receive constant updates oftracking device 106 locations regardless of whether a tracking device106 is lost and provide a most recent updated location of the trackingdevice 106 in response to receiving an indication that the trackingdevice 106 is lost.

In some configurations, the tracking system 100 can send a locationrequest associated with the tracking device 106 to each of the communitymobile devices 104. The location request can include any instructionsand/or information necessary for the community mobile devices 106 tofind the tracking device 102. For example, the location request caninclude a unique identifier associated with the tracking device 106 thatcan be used by the community mobile devices 104 to identify the trackingdevice 106. Accordingly, if one of the community mobile devices 104detects a communication from the tracking device 106 (e.g., if thecommunity mobile device 104 is within range or moves within range of thecommunication capabilities of the tracking device 106 and receives asignal from the tracking device 106 including or associated with theunique identifier associated with the tracking device 106), thecommunity mobile device 104 can inform the tracking system 100. Usingthe information received from the community mobile devices 104, thetracking system 100 can inform the user (e.g., by way of the mobiledevice 102) of a potential location of the tracking device 106.

As shown in FIG. 1 and as mentioned above, the tracking system 100 cancommunicate with a plurality of community mobile devices 104 associatedwith corresponding community users 105. For example, an implementationmay include a first community mobile device 104 a associated with afirst community user 105 a, a second community mobile device 104 bassociated with a second community user 105 b, and additionalcommunication mobile devices associated with additional community usersup to an nth community mobile device 104 n associated with an nthcommunity user 105 n. The community mobile devices 104 may also includefunctionality that enables each community mobile device 104 to identifya tracking device 106 within a proximity of the community mobile device104. In one example, a first community mobile device 104 a withinproximity of a tracking device 106 can communicate with the trackingdevice 106, identify the tracking device 106 (e.g., using a uniqueidentifier associated with the tracking device 106), and/or detect alocation associated with the tracking device 106 (e.g., a location ofthe first mobile community device 104 a at the time of the communicationwith the tracking device 106). This information can be used to provideupdated locations and/or respond to a location request from the trackingsystem 100 regarding the tracking device 106. In some embodiments, thesteps performed by the first community mobile device 104 a can be hiddenfrom the first community user 105 a. Accordingly, the first communitymobile device 104 a can assist in locating the tracking device 106without bother and without the knowledge of the first community user 105a.

As mentioned above, the tracking system 100 can assist a user 103 inlocating a tracking device 106. The tracking device may be a chip, tile,tag, or other device for housing circuitry and that may be attached toor enclosed within an object such as a wallet, keys, purse, car, orother object that the user 103 may track. Additionally, the trackingdevice 106 may include a speaker for emitting a sound and/or atransmitter for broadcasting a beacon. In one configuration, thetracking device 106 may periodically transmit a beacon signal that maybe detected using a nearby mobile device 102 and/or community mobiledevice 104. In some configurations, the tracking device 106 broadcasts abeacon at regular intervals (e.g., one second intervals) that may bedetected from a nearby mobile device (e.g., community mobile device104). The strength of the signal emitted from the tracking device 106may be used to determine a degree of proximity to the mobile device 102or community mobile device 104 that detects the signal. For example, ahigher strength signal would indicate a close proximity between thetracking device 106 and the mobile device 102 and a lower strengthsignal would indicate a more remote proximity between the trackingdevice 106 and the mobile device 102, though in some embodiments, thetracking device 106 can intentionally vary the transmission strength ofthe beacon signal. In some cases, the strength of signal or absence of asignal may be used to indicate that a tracking device 106 is lost.

System Overview

FIG. 2 illustrates an example tracking system for use in a trackingsystem environment, according to one embodiment. As shown, the trackingsystem 100 may include, but is not limited to, an association manager204, a tracking device location manager 206, a tracking deviceintervention manager 207, and a data manager 208, each of which may bein communication with one another using any suitable communicationtechnologies. It will be recognized that although managers 204-208 areshown to be separate in FIG. 2, any of the managers 204-208 may becombined into fewer managers, such as into a single manager, or dividedinto more managers as may serve a particular embodiment.

The association manager 204 may be configured to receive, transmit,obtain, and/or update information about a user 103 and/or informationabout one or more specific tracking devices (e.g., tracking device 106).In some configurations, the association manager 204 may associateinformation associated with a user 103 with information associated witha tracking device 106. For example, user information and trackinginformation may be obtained by way of a mobile device 102, and theassociation manager 204 may be used to link the user information andtracking information. The association between user 103 and trackingdevice 106 may be used for authentication purposes, or for storing userinformation, tracking device information, permissions, or otherinformation about a user 103 and/or tracking device 106 in a database.

The tracking system 100 also includes a tracking device location manager206. The tracking device location manager 206 may receive and process anindication that the tracking device 106 is lost from a mobile device(e.g., mobile device 102 or community mobile devices 104). For example,the tracking system 100 may receive a lost indication from a mobiledevice 102 indicating that the tracking device 106 is lost. The trackingdevice location manager 206 may set a flag on a database (e.g., trackerdatabase 212) indicating that the tracking device 106 is lost. Thetracking device location manager 206 may also query a database todetermine tracking information corresponding to the associated user 103and/or tracking device 106. The tracking system 100 may obtain trackingdevice information and provide the tracking device information or otherinformation associated with the tracking device 106 to a plurality ofcommunity mobile devices 104 to be on alert for the lost or unavailabletracking device 106.

The tracking device location manager 206 may also receive a locationfrom one or more community mobile devices 104 that detect the trackingdevice 106, for instance in response to the community mobile devicereceiving a beacon signal transmitted by the tracking device 106,without the tracking device 106 having been previously marked as lost.In such embodiments, a user corresponding to the mobile device 102 canrequest a most recent location associated with the tracking device fromthe tracking system 100, and the location manager 206 can provide thelocation received from the community mobile device for display by themobile device 102. In some embodiments, the location manager 206provides the location of the tracking device 106 received from acommunity mobile device either automatically (for instance if thetracking device 106 is marked as lost) or at the request of a user ofthe mobile device 102 (for instance, via an application on the mobiledevice 102). The location manager 206 can provide a location of atracking device 106 to a mobile device 102 via a text message, pushnotification, application notification, automated voice message, or anyother suitable form of communication.

The tracking device location manager 206 may further manage providingindications about whether a tracking device 106 is lost or no longerlost. For example, as discussed above, the tracking device locationmanager 206 may provide a location request to the community of mobiledevices 104 indicating that a tracking device 106 is lost. Additionally,upon location of the tracking device 106 by the user 103 or by one ofthe community of users 105, the tracking device location manager 206 mayprovide an indication to the user 103, community user 105, or trackingsystem 100 that the tracking device 106 has been found, thus removingany flags associated with a tracking device and/or canceling anylocation request previously provided to the community of users 105. Forexample, where a user 103 sends an indication that the tracking device106 is lost to the tracking system 100 and later finds the trackingdevice 106, the mobile device 102 may provide an indication to thetracking system 100 that the tracking device 106 has been found. Inresponse, the tracking device location manager 206 may remove a flagindicating that the tracking device 106 is lost and/or provide anupdated indication to the community of users 105 that the trackingdevice 106 has been found, thus canceling any instructions associatedwith the previously provided location request. In some configurations,the notification that the tracking device 106 has been found may beprovided automatically upon the mobile device 102 detecting the trackingdevice 106 within a proximity of the mobile device 102. Alternatively,the notification that the tracking device 106 has been found may beprovided by the user 103 via user input on the mobile device 102. Inanother example, a known user (e.g., a friend or family member) withwhom the tracking device 106 has been shared may provide an indicationthat the tracking device 106 has been found.

The tracking system 100 additionally includes a tracking deviceintervention manager 207. The tracking device intervention manager 207can identify whether a tracking device is lost or has been left behind,or can predict a state of the tracking device based on, for instance,the location of a tracking device relative to other tracking devices,the location of a tracking device relative to a user's phone, and thelocation of a tracking device relative to historical user data. When adevice is determined to be lost or left behind, or when a state of thetracking device has been predicted, the tracking device interventionmanager 207 can notify a user, for instance via a notification sent toand displayed by a mobile device 102 of the user. The tracking deviceintervention manager 207 is described below in greater detail.

The tracking system 100 additionally includes a data manager 208. Thedata manager 208 may store and manage information associated with users,mobile devices, tracking devices, permissions, location requests, andother data that may be stored and/or maintained in a database related toperforming location services of tracking devices. As shown, the datamanager 208 may include, but is not limited to, a user database 210, atracker database 212, permissions data 214, and location request data216. It will be recognized that although databases and data within thedata manager 208 are shown to be separate in FIG. 2, any of the userdatabase 210, tracker database 212, permissions data 214, and locationrequest data 216 may be combined in a single database or manager, ordivided into more databases or managers as may serve a particularembodiment.

The data manager 208 may include the user database 210. The userdatabase 210 may be used to store data related to various users. Forexample, the user database 210 may include data about the user 103 aswell as data about each user 105 in a community of users 105. Thecommunity of users 105 may include any user that has provided userinformation to the tracking system 100 via a mobile device 102, 104 orother electronic device. The user information may be associated with oneor more respective tracking devices 106, or may be stored without anassociation to a particular tracking device. For example, a communityuser 105 may provide user information and permit performance of trackingfunctions on the community mobile device 104 without owning or beingassociated with a tracking device 106. The user database 210 may alsoinclude information about one or more mobile devices or other electronicdevices associated with a particular user.

The data manager 208 may also include a tracker database 212. Thetracker database 212 may be used to store data related to trackingdevices. For example, the tracker database 212 may include tracking datafor any tracking device 106 that has been registered with the trackingsystem 100. Tracking data may include unique tracker identifications(IDs) associated with individual tracking devices 106. Tracker IDs maybe associated with a respective user 103. Tracker IDs may also beassociated with multiple users. Additionally, the tracker database 212may include any flags or other indications associated with whether aspecific tracking device 106 has been indicated as lost and whether anyincoming communications with regard to that tracking device 106 shouldbe processed based on the presence of a flag associated with thetracking device 106.

The data manager 208 may further include permissions data 214 andlocation request data 216. Permissions data 214 may include levels ofpermissions associated with a particular user 103 and/or tracking device106. For example, permissions data 214 may include additional users thathave been indicated as sharing a tracking device 106, or who have beengiven permission to locate or receive a location of a tracking device106. Location request data 216 may include information related to alocation request or a lost indication received from the user 103 via amobile device 102.

FIG. 3 illustrates an example user mobile device for use in a trackingsystem environment, according to one embodiment. As shown, the mobiledevice 102 may include, but is not limited to, a user interface manager302, a location request manager 304, a database manager 306, a trackingmanager 308, and an intervention engine 340, each of which may be incommunication with one another using any suitable communicationtechnologies. It will be recognized that although managers 302-308 areshown to be separate in FIG. 3, any of the managers 302-308 may becombined into fewer managers, such as into a single manager, or dividedinto more managers as may serve a particular embodiment.

As will be explained in more detail below, the mobile device 102includes the user interface manager 302. The user interface manager 302may facilitate providing the user 103 access to data on a trackingsystem 100 and/or providing data to the tracking system 100. Further,the user interface manager 302 provides a user interface by which theuser 103 may communicate with tracking system 100 and/or tracking device106 via mobile device 102. For example, the user interface manager 302can facilitate the providing of power settings to the tracking device106 for power management on the tracking device 106 by the user 103.

The mobile device 102 may also include a location request manager 304.The location request manager 304 may receive and process a request inputto the mobile device 102 to send an indication that a tracking device106 is lost to a tracking system 100. For example, the user 103 mayprovide an indication that a tracking device 106 is lost, unreachable,or otherwise unavailable from the mobile device 102 via the userinterface manager 302, and the location request manager 304 may processthe lost indication and provide any necessary data to the trackingsystem 100 for processing and relaying a location request to other users105 over a network 108. In some configurations, an indication that atracking device 106 is lost is provided via user input. Alternatively,the indication may be transmitted automatically in response to themobile device 102 determining that a tracking device 106 is lost.

In addition, the location request manager 304 can request a location ofthe tracking device 106 without the tracking device 106 being identifiedas lost. For instance, a user can access a tracking device locationfeature of an application running on the mobile device 102 (for example,via the user interface manager 302), and the location request manager304 can request a most recent location of the tracking device 106 fromthe tracking system 100. The location request manager 304 can receivethe most recent location from the tracking system 100, and can displaythe most recent location via the user interface manager 302.

The mobile device 102 may also include a database manager 306. Thedatabase manager 306 may maintain data related to the user 103, trackingdevice 106, permissions, or other data that may be used for locating atracking device 106 and/or providing a request to a tracking system 100for locating one or more tracking devices 106 associated with the user103. Further, the database manager 306 may maintain any information thatmay be accessed using any other manager on the mobile device 102.

The mobile device 102 may further include a tracking manager 308. Thetracking manager 308 may include a tracking application (e.g., asoftware application) for communicating with and locating a trackingdevice 106 associated with the user 103. For example, the trackingmanager 308 may be one configuration of a tracking application installedon the mobile device 102 that provides the functionality for locating atracking device 106 and/or requesting location of a tracking device 106using a tracking system 100 and/or a plurality of community mobiledevices 104. As shown, the tracking manager 308 may include, but is notlimited to, a Bluetooth Low Energy (BLE) manager 310, a persistencemanager 312, a local files manager 314, a motion manager 316, a securestorage manager 318, a settings manager 320, a location manager 322, anetwork manager 324, a notification manager 326, a sound manager 328, afriends manager 330, a photo manager 332, an authentication manager 334,and a device manager 336. Thus, the tracking manager 308 may perform anyof the functions associated with managers 310-338, described inadditional detail below.

The BLE manager 310 may be used to manage communication with one or moretracking devices 106. The persistence manager 312 may be used to storelogical schema information that is relevant to the tracking manager 308.The local files manager 314 may be responsible for managing all filesthat are input or output from the mobile device 102. The motion manager316 may be responsible for all motion management required by thetracking manager 308. The secure storage manager 318 may be responsiblefor storage of secure data, including information such as passwords andprivate data that would be accessed through this sub-system. Thesettings manager 320 may be responsible for managing settings used bythe tracking manager 308. Such settings may be user controlled (e.g.,user settings) or defined by the tracking manager 308 for internal use(e.g., application settings) by a mobile device 102 and/or the trackingsystem 100. The location manager 322 may be responsible for all locationtracking done by the tracking manager 308. For example, the locationmanager 322 may manage access to the location services of the mobiledevice 102 and works in conjunction with other managers to persist data.The network manager 324 may be responsible for all Internetcommunications from the tracking manager 308. For example, the networkmanager 324 may mediate all Internet API calls for the tracking manager308. The notification manager 326 may be responsible for managing localand push notifications required by the tracking manager 308. The soundmanager 328 may be responsible for playback of audio cues by thetracking manager 308. The friends manager 330 may be responsible formanaging access to contacts and the user's social graph. The photomanager 332 may be responsible for capturing and managing photos used bythe tracking manager 308. The authentication manager 334 may beresponsible for handling the authentication (e.g., sign in or login) ofusers. The authentication manager 334 may also include registration(e.g., sign up) functionality. The authentication manager 334 furthercoordinates with other managers to achieve registration functionality.The device manager 336 may be responsible for managing the devicesdiscovered by the tracking manager 308. The device manager 336 mayfurther store and/or maintain the logic for algorithms related to devicediscovery and update.

The mobile device 102 may further include an intervention engine 340.The intervention engine 340 is configured to, in response to adetermination that a tracking device may be lost (or inadvertently leftbehind, misplaced, forgotten, stolen, etc.), notify a user that thetracking device may be lost or left behind. In some embodiments, thedetermination that the tracking device may be lost or left behind may bemade by the tracking system 100 and communicated to the mobile device102, may be made by a different tracking device and communicated to themobile device, or may be made by the intervention engine 340. Likewise,the intervention engine 340 is configured to, in response to predictinga state of the tracking device, notify a user of the tracking device ofthe predicted state of the tracking device. The state of the trackingdevice can be predicted by the tracking system 100 and communicated tothe mobile device 102, or may be made by the intervention engine 340.The intervention engine 340 can notify a user of the mobile device 102that a tracking device may be lost or left behind, or can notify theuser of the predicted state of the tracking device in a number of ways,for instance by displaying a notification within a graphicalnotification interface of the mobile device, by displaying a status ornotification within an application interface of the mobile device, byemitting an alarm or notification audio, or the like.

FIG. 4 illustrates an example community mobile device for use in atracking system environment, according to one embodiment. As shown, thecommunity mobile device 104 may include, but is not limited to, a userinterface manager 402, a tracking device manager 404, a database manager406, and a tracking manager 408, each of which may be in communicationwith one another using any suitable communication technologies. The userinterface manager 402, database manager 406, and tracking manager 408illustrated in FIG. 4 may include similar features and functionality asthe user interface manager 302, database manager 306, and trackingmanager 308 described above in connection with FIG. 3. It will berecognized that although managers 402-408 are shown to be separate inFIG. 4, any of the managers 402-408 may be combined into fewer managers,such as into a single manager, or divided into more managers as mayserve a particular embodiment.

The community mobile device 104 may include a tracking device manager404. The tracking device manager 404 may facilitate scanning for nearbytracking devices 106. In some configurations, the tracking devicemanager 404 can continuously or periodically scan (e.g., once persecond) for nearby tracking devices 106. The tracking device manager 404may determine whether to provide an updated location of the nearbytracking device 106 to the tracking system 100. In some configurations,the tracking device manager 404 provides a location of a nearby trackingdevice 106 automatically. Alternatively, the tracking device manager 404may determine whether the location of the tracking device 106 has beenrecently updated, and may determine whether to provide an updatedlocation based on the last time a location of the tracking device 106has been updated (e.g., by the community mobile device 104). Forexample, where the community mobile device 104 has provided a recentupdate of the location of a tracking device 106, the tracking devicemanager 404 may decide to wait a predetermined period of time (e.g., 5minutes) before providing an updated location of the same trackingdevice 106.

In one configuration, the tracking device manager 404 may receive andprocess a location request or other information relayed to the communitymobile device 104 by the tracking system 100. For example, the trackingdevice manager 404 may receive an indication of a tracking device 106that has been indicated as lost, and provide a location of the trackingdevice 106 if it comes within proximity of the community mobile device104. In some configurations, the community mobile device 104 isconstantly scanning nearby areas to determine if there is a trackingdevice 106 within a proximity of the community mobile device 104.Therefore, where a tracking device 106 that matches information providedby the tracking system 100 (e.g., from the location request) comeswithin proximity of the community mobile device 104, the tracking devicemanager 404 may generate and transmit a response to the location requestto the tracking system 100, which may be provided to the user 103associated with the tracking device 106. Further, generating andtransmitting the response to the tracking request may be conditioned onthe status of the tracking device 106 being flagged as lost by themobile device 102 and/or the tracking system 100.

The tracking device manager 404 may additionally provide otherinformation to the tracking system 100 in response to receiving thetracking request. For example, in addition to providing a location ofthe community mobile device 104, the tracking device manager may providea signal strength associated with the location to indicate a level ofproximity to the location of the community mobile device 104 provided tothe user 103. For example, if a signal strength is high, the locationprovided to the user 103 is likely to be more accurate than a locationaccompanied by a low signal strength. This may provide additionalinformation that the user 103 may find useful in determining the preciselocation of tracking device 106.

As described above, the tracking device manager 404 may determinewhether to send a location within the proximity of the tracking device106 to the tracking system 100. The determination of whether to send alocation to the tracking system 100 may be based on a variety offactors. For example, a tracking device manager 404 may determine tosend a location of the tracking device 106 to a tracking system 100based on whether the detected tracking device 106 has been indicated aslost or if a tracking request has been provided to the community mobiledevice 104 for the particular tracking device 106. In someconfigurations, the community mobile device 104 may send an update of alocation of a tracking device 106 even if the tracking device 106 is notassociated with a current tracking request or if the tracking device 106is not indicated as lost. For example, where the location of a trackingdevice 106 has not been updated for a predetermined period of time, thecommunity mobile device 104 may provide an update of a tracking devicelocation to the tracking system 100, regardless of whether a trackingrequest has been received.

In some configurations, the community mobile device 104 may includeadditional features. For example, the community mobile device 104 mayallow a tracking system 100 to snap and download a photo using photofunctionality of the community mobile device 104. In someconfigurations, this may be an opt-in feature by which a community user105 permits a tracking system 100 to take a snap-shot and possiblyprovide a visual image of an area within a proximity of the trackingdevice 106.

FIG. 5 illustrates an example tracking device for use in a trackingsystem environment, according to one embodiment. The tracking device 106of FIG. 5 includes an interface 502, a transceiver 504, a controller506, and one or more sensors 508. The transceiver 504 is a hardwarecircuit capable of both transmitting and receiving signals. It should benoted that in other embodiments, the tracking device 106 includes fewer,additional, or different components than those illustrated in FIG. 5.

The interface 502 provides a communicative interface between thetracking device 106 and one or more other devices, such as a mobiledevice 102. For instance, the interface 502 can instruct the transceiver504 to output beacon signals as described above (for example,periodically or in response to a triggering event, such as a detectedmovement of the tracking device 106). The interface 502 can, in responseto the receiving of signals by the transceiver 504 from, for instance,the mobile device 102, manage a pairing protocol to establish acommunicative connection between the tracking device 106 and the mobiledevice 102. As noted above, the transceiver 504 can include a BLEreceiver and transmitter, though in other embodiments, the transceiver504 enables communications via other suitable wireless connectionprotocols (such as WiFi, Global System for Mobile Communications or“GSM”, LTE, and the like). It should be noted that while variousexamples herein describe the transceiver 504 as a GSM receiver andtransmitter, this is done for the purposes of brevity, and it should beemphasized that the transceiver 504 can communicate over any otherwireless communication protocol according to the embodiments describedherein.

The controller 506 is a hardware chip that configures the trackingdevice 106 to perform one or more functions or to operate in one oroperating modes or states. For instance, the controller 506 canconfigure the interval at which the transceiver broadcasts beaconsignals, can authorize or prevent particular devices from pairing withthe tracking device 106 based on information received from the devicesand permissions stored at the tracking device, can increase or decreasethe transmission strength of signals broadcasted by the transceiver, canconfigure the interface to emit a ringtone or flash an LED light, canenable or disable various tracking device sensors, can enable or disablecommunicative functionality of the tracking device 106, can configurethe tracking device into a sleep mode or awake mode, can configure thetracking device into a power preservation mode, and the like. Thecontroller 506 can configure the tracking device to perform functions orto operate in a particular operating mode based on information orsignals received from a device paired with or attempting to pair withthe tracking device 106, based on an operating state or connection stateof the tracking device 106, based on user-selected settings, based oninformation stored at the tracking device 106, based on a detectedlocation of the tracking device 106, based on historical behavior of thetracking device 106 (such as a previous length of time the trackingdevice was configured to operate in a particular mode), based oninformation received from the sensors 508, or based on any othersuitable criteria.

The sensors 508 can include motion sensors (such as gyroscopes oraccelerators), altimeters, GPS transceivers, orientation sensors,proximity sensors, communication sensors, light sensors, temperaturesensors, pressure sensors, touch sensors, audio sensors, or any othersuitable sensor configured to detect an environment of the trackingdevice 106, a state of the tracking device 106, a movement or locationof the tracking device 106, and the like. The sensors 508 are configuredto provide information detected by the sensors to the controller 506,which in turn can provide the information detected by the sensors to amobile device 102 communicatively coupled to the tracking device 106.

Tracking Device Collection Overview

Tracking devices can be organized into collections of tracking devicesthat are commonly co-located, that may move similarly, that are oftenkept close together, that are used similarly or for a common purpose,that are attached to related or similar objects, that are associatedwith a common subject matter, or that behave in a similar way. As usedherein, a “collection” refers to a pre-determined set of trackingdevices. Collections of tracking devices can include one, two, or moretracking devices, and the identities of each collection and theidentities of the tracking devices within each collection can be storedwithin the tracker database 212, within a mobile device 102 of a userassociated with the collection, or any other suitable location.

Tracking device collections can be defined by users. For instance, auser can create a collection via an application interface or othermobile device interface, via a web page interface associated with thetracking system 100, or the like. The user can select a set of trackingdevices owned or managed by the user, can associate with the selectedtracking devices, and can name or otherwise identify the collection. Forinstance, the user can select tracking devices that are attached toobjects needed by the user for the user's job, can create a collectionof “work” tracking devices, and can name the collection, all via anapplication running on the user's mobile device 102. The mobile device102 can then communicate the defined collection to the tracking system100 for storage.

Alternatively, tracking device collections can be defined by thetracking system 100, based on common historical behavior/usage patternsassociated with a set of tracking devices. For instance, if a set oftracking devices (e.g., a first tracking device coupled to a user'swallet, a second to a user's ID badge, and a third to a user'sbriefcase) commonly accompanies a user from a home location to a worklocation weekday mornings, and likewise from the work location to thehome location weekday evenings, the set of tracking devices can begrouped together in a tracking device collection. As described above,tracking devices are coupled to objects, and the user can identify tothe tracking system 100 (for instance, via the mobile device 102) theidentity of the objects to which the tracking devices are attached.Accordingly, the tracking system 100 can define collections of trackingdevices based on the identified types of objects to which a set oftracking devices are coupled. For example, if a user identifies anobject to which a first tracking device is coupled as “luggage”, andidentifies an object to which a second tracking device is coupled as“passport”, the tracking system 100 can define a “travel” trackingdevice collection based on a pre-determined likelihood that a user'sluggage and passport are likely to be used together.

In some embodiments, the tracking system 100 can identify a candidatetracking device collection (e.g., by identifying a set of trackingdevices), and can present or suggest the candidate tracking devicecollection to a user (for instance, via the user's mobile device 102).For example, the travel system 100 can identify a set of trackingdevices that commonly move in conjunction with a user's car, and cansuggest a candidate “car” tracking device collection to the user. If theuser agrees to define a tracking device collection based on thepresented candidate tracking device collection, the tracking system 100can store the tracking device collection.

In some embodiments, the tracking system 100 can identify a candidatetracking device likely to be related to a defined tracking devicecollection, and can present or suggest the candidate tracking device tothe user to add to the tracking device collection. For example, if auser has defined a “travel” collection of tracking devices including apassport tracking device and luggage tracking device, and the trackingsystem 100 determines that a tracking device coupled to a camera bag iscommonly co-located with the passport and luggage (or moves inconjunction with the passport and luggage), then the tracking system cansuggest to the user (for instance, via the user's mobile device 102)that the user add the camera bag to the travel tracking devicecollection. If the user accepts the suggestion and adds the suggestedtracking device to the tracking device collection, the tracking system100 can update the stored tracking device collection to include thesuggested tracking device.

In some embodiments, an interface of the user's mobile device (such asan application interface, a web page interface, and the like) candisplay one or more tracking device collections to the user. Forinstance, the mobile device can display a selectable icon, button, ordisplay portion corresponding to the tracking device collection. When auser selects the tracking device collection, the mobile device canidentify tracking devices within the selected tracking devicecollection, and can display information associated with the identifiedtracking devices within the collection (such as location information,status information, information about the object to which the trackingdevice is coupled, and the like). For instance, the user can select a“work” tracking device collection from an interface of the applicationassociated with the tracking system 100, and the application can displayinformation associated with a first tracking device coupled to a user'skeys, a second tracking device coupled to the user's ID badge, and athird tracking device coupled to the user's briefcase.

Examples of tracking device collections include but are not limited to:

-   -   Car accessory tracking devices: a wallet, glasses, spare tire,        garage door remote control, parking pass, toll road/bridge        payment sensor, keys, phone charger, jumper cables, car jack,        auxiliary cable    -   Travel tracking devices: luggage, phone charger, laptop charger,        makeup/toiletry bag, passport, digital book/reader, computer,        tablet, phone, camera, headphones, airpods, water bottle,        jacket, pillow    -   Purse tracking devices: purse, wallet, checkbook, keys, pillbox    -   Work tracking devices: laptop, tablet, phone, ID badge,        headphones, wallet, briefcase    -   School tracking devices: backpack, lunch bag, laptop, books    -   Home tracking devices: remote control, safe, jewelry box, tools,        toolbox, artwork    -   Camping tracking devices: tent, sleeping bags, headlamp,        flashlight, lanterns, first aid kit    -   Skiing/snowboarding tracking devices: skis, snowboard, coat,        gloves, helmet, goggles, ski pass    -   Golf tracking devices: clubs, bag, shoes, hat    -   SCUBA tracking devices: fins, mask, tank, wetsuit, flashlight,        weight belt, buoyancy compensator    -   Art/antique tracking devices: tracking devices coupled to        artwork or antiques    -   Photography tracking devices: camera bag, camera, lenses,        tripods, flash gear    -   Public tracking devices: tracking devices coupled to buses, food        trucks, and the like    -   Computer/laptop accessories tracking devices: laptop, tablet,        charger, dongle, mouse, keyboard, monitors, external hard drive,        web camera    -   Tool tracking devices: hammer, screwdriver, wrench, saw, safety        glasses, tool box    -   Emergency supplies tracking devices: fire extinguisher, water        containers, canned foods, flashlights, emergency radio    -   Baby/child tracking devices: baby bag, diapers, toys, baby        powder, baby wipes, books, car seat, stroller, clothes    -   Gym tracking devices: gym shoes, gym bag, extra clothes, towel,        joint brace/support    -   Beach tracking devices: towel, sunscreen, beach umbrella, water        bottle, surfboard, cooler    -   Rain-gear tracking devices: jacket, hat, poncho, umbrella, rain        boots    -   Snow-gear tracking devices: jacket, hat, ear muffs, scarf    -   Warm-weather tracking devices: sunscreen, sunglasses, sandals,        water bottle    -   Valuable item tracking devices: Art, antique, television,        jewelry/jewelry box, safe, monitor, computer        Tracking Device Intervention Overview

As used herein, a tracking device “intervention” can refer to notifyinga user, owner, or manager of a tracking device that the tracking devicemay be lost, may be forgotten, or may be inadvertently left behind(collectively referred to as “potentially lost” hereinafter). In someembodiments, a tracking device intervention can refer to notifying auser of a predicted state or behavior of a tracking device (collectivelyreferred to as “predicted state” hereinafter). In each case, a trackingdevice is either identified as potentially lost or a state of thetracking device is predicted, and in response, a notification is sent toa user of the tracking device.

During the performance of a tracking device intervention, a user can benotified of the predicted state of the tracking device or that thetracking device is potentially lost via a mobile device 102, forinstance via a notification displayed within a mobile device orapplication interface, via an audio signal or vibration signal, and thelike. As also noted above, any of the tracking system 100, the mobiledevice 102, or a tracking device 106 can identify a tracking device ispotentially lost or can predict a state of the tracking device, thoughthe remainder of the description will refer to the tracking systemidentifying a tracking device as potentially lost for the purposes ofsimplicity.

A notification that a tracking device is potentially lost can includeinformation about a last known location of the tracking device (forinstance, displayed on a map displayed by a mobile device), can includeinformation identifying the tracking device (such as a name of thetracking device, the identity of the object to which the tracking deviceis attached, or an icon corresponding to the tracking device), caninclude information identifying a tracking device collection to whichthe tracking device belongs (such as a name of the tracking devicecollection or an icon corresponding to the tracking device collection),and can include text indicating why the tracking device is thought to belost or left behind (e.g., “you normally take your briefcase to workwith you, and you left it behind today”). A notification of a predictedstate of the tracking device can include information identifying thetracking device or a tracking device collection to which the trackingdevice belongs, can include information describing the predicted stateof the tracking device (e.g., “you might want to bring this trackingdevice with you before you leave for work”), and can include informationdescribing the circumstances under which the state of the trackingdevice is predicted (e.g., “it is warmer than normal outside today,don't forget to bring your water bottle”).

In some embodiments, a notification of a predicted state of the trackingdevice or identifying a tracking device as potentially lost can includean option to disregard the notification. For instance, if thenotification indicates that a tracking device is potentially lost, theuser can select an option displayed by or associated with thenotification to identify the tracking device as not lost. Likewise, ifthe notification indicates a predicted state of the tracking devicereminding a user to bring an object coupled to a particular trackingdevice, the user can select an option displayed by or associated withthe notification to disregard the reminder. Likewise, in someembodiments, a notification that a tracking device is identified aspotentially lost can include an option to confirm the tracking device aslost. In response to the selection of such an option by a user, thetracking system 100 can affirmatively classify the tracking device aslost according to the principles described herein.

The tracking system 100 can identify a tracking device 106 aspotentially lost or can predict a future state of the tracking devicebased on a number of factors, including but not limited to: a proximityof a tracking device to one or more additional tracking devices, aproximity of a tracking device to a user's mobile device, a movement ofa tracking device to more than a threshold distance away from a mobiledevice or one or more additional tracking devices, a location of atracking device relative to a particular or pre-defined geographiclocation (such as GPS coordinates, a user's home, a user's place ofemployment, etc.), a location of a tracking device relative toparticular or pre-defined geographic boundaries (such as boundarieswithin a map, property lines, and the like), based on a usage ormovement behavior of the tracking device, based on a usage or movementbehavior of a user or owner of a tracking device, based on informationreceived from an external source (for instance, via an API correspondingto the API), based on information received from sensors within thetracking device or a user's mobile device (such as motion sensors),based on a current time or date, based on a low battery level, based ona malfunction of the tracking device or a tracking device component, orbased on any other suitable factors. Circumstances in which the trackingsystem 100 can identify a tracking device 106 as potentially lost or canpredict a state of the tracking device are described in greater detailbelow.

Tracking Device Proximity:

The tracking system 100 can identify a tracking device 106 aspotentially lost in response to determining that the tracking device isnot located within a threshold distance (such as a wirelesscommunicative range, a selected threshold distance, or a pre-determineddistance) of a target device (such as a user's mobile device or of oneor more additional tracking devices). For instance, if a tracking deviceis commonly located within a threshold distance of a user's mobiledevice, the tracking system 100 can flag the tracking device aspotentially lost in response to a determination that the tracking deviceis located outside the threshold distance of the user's mobile device.In addition, if a tracking device is commonly located within a thresholddistance of a second tracking device, the tracking system can flag thetracking device as potentially lost in response to a determination thatthe tracking device is located more than a threshold distance away fromthe second tracking device. Likewise, if a tracking device is part of atracking device collection, the tracking system 100 can flag thetracking device as potentially lost in response to a determination thatthe tracking device is located more than a threshold distance away fromone or more additional tracking devices within the tracking devicecollection.

It should be noted that the determination that a tracking device ispotentially lost in response to proximity to another tracking device, atracking device collection, or a user's mobile device can be based ontime. For instance, if two tracking devices are commonly located withina threshold distance of each other during normal work hours for a user,but aren't commonly located within the threshold distance of each otheroutside of work hours, the tracking system 100 may flag a first of thetracking devices as potentially lost only if the first tracking deviceis located more than the threshold distance from the second trackingdevice during work hours, and may not flag the first tracking device aspotentially lost if the first tracking device is located more than thethreshold distance from the second tracking device outside of workhours.

The tracking system 100 can determine that a tracking device 106 is notwithin a threshold proximity of a mobile device 102 by determining thatthe tracking device is outside of the transmission or communicativerange of the mobile device. For instance, if the mobile device and thetracking device are configured to communicatively couple via theBluetooth protocol, the tracking system 100 can determine that thetracking device 106 is outside of a threshold proximity of the mobiledevice 102 if the mobile device is unable to receive Bluetoothadvertisements or communications from the tracking device. The trackingsystem 100 can determine that a first tracking device is not within athreshold proximity of one or more additional tracking devices bydetermining that the one or more additional tracking devices are withinthe transmission or communicative range of one or more mobile devices,and that the first tracking device is not within the transmission orcommunicative range of the one or more mobile devices. Likewise, thetracking system 100 can determine that a tracking device 106 is notwithin a threshold proximity of a mobile device 102 or one or moreadditional tracking devices by determining a location of the trackingdevice (e.g., from a community mobile device 104 different than themobile device 102, from a database storing a last known location of thetracking device, or from any other suitable source), and determiningthat the determined location of the tracking device is greater than athreshold distance away from the mobile device 102 or the one or moreadditional tracking devices.

In some embodiments, the tracking system 100 can flag a tracking device106 as potentially lost in response to the movement of the trackingdevice from within a threshold distance of a mobile device 102 togreater than a threshold distance of the mobile device. In someembodiments, the tracking system 100 can flag a tracking device 106 aspotentially lost in response to the severing of a communicativeconnection between the tracking device and a mobile device 102 (forinstance, as a result of the movement of the tracking device and themobile device away from each other). In some embodiments, a user canselect the threshold distance used by the tracking system 100 to triggera determination that the tracking device 106 is potentially lost, forinstance via an interface of the mobile device 102.

FIG. 6 illustrates a flowchart for a method of identifying a trackingdevice as potentially lost based on a threshold distance from a targetdevice, according to one embodiment. Alternate embodiments may containmore, fewer, or different steps, or the steps may be performed in anorder different from the one shown in FIG. 6.

The tracking system 100 receives 600 a location of a user's trackingdevice and receives 610 a location of a target device. In someembodiments, the tracking device location is received from a mobiledevice of a user different from the user to whom the tracking devicebelongs. The target device can be another tracking device, a user'smobile device, or any other suitable system. The tracking system 100determines 620 whether the tracking device location is more than athreshold distance from the target device location. If the trackingdevice location is determined to be more than the threshold distancefrom the target device location, the tracking system identifies 630 thetracking device as potentially lost. The tracking system 100 generates640 a notification identifying the tracking device and indicating thatthe tracking device is potentially lost, and provides 650 the generatednotification to the user's mobile device. The user's mobile device canbe configured to display the notification to the user.

Examples: In some embodiments, the tracking system 100 notifies a userthat a tracking device is potentially lost if the tracking device is notlocated with a threshold distance of the user's mobile device and if thetracking device is coupled with an object the user uses regularly. Forexample, the user may be notified as such if the tracking device iscoupled to keys, a wallet, a phone, glasses, a watch, a laptop, adigital book/reader, or a tablet. The threshold distance can be selectedby the user or the tracking system 100 such that the tracking device ison the user's person or within the user's immediate vicinity (e.g. <5feet), or may be selected such that the user is reminded to bring theobject when the user leaves an area (e.g. approximately 15 feet). Insome embodiments, the user designates which tracking devices are coupledto objects the user uses regularly. The user may also designate timeperiods during which those designated tracking devices should be withina threshold distance of the user's mobile device. For example, the usermay designate the user's work hours, workout hours, sleeping hours,dining hours, relaxation hours, traveling hours, class hours, orcommuting hours.

In some embodiments, the tracking system may notify a user that atracking device is potentially lost if a tracking device was locatedwithin the threshold distance of the user's mobile device when the userleft a geographic location and the tracking device is not located withinthe threshold distance of the user's mobile device before the userreturns to that geographic location. For example, if the tracking deviceis coupled to a tablet, if the user leaves home with the tablet and thetracking system 100 determines that the tablet tracking device is notwithin a threshold distance of the user's mobile device before the userreturns home, the tracking system 100 may notify the user that thetablet tracking device is potentially lost. The threshold distance maybe selected such that if the tracking device is near the user or in theuser's car (e.g. 2-5 feet), the tracking device is not identified aspotentially lost. Example geographic locations include the user's home,work, school, gym, or car.

In some embodiments, the tracking system 100 notifies the user that atracking device coupled to car accessory may not be in the car based onwhether the car accessory tracking device is located within a thresholddistance of a tracking device coupled to the car. For example, if atracking device coupled to the user's parking pass is not located withinthe threshold distance of a tracking device coupled to a car, thetracking system 100 may notify the user that the parking pass trackingdevice is not in the car. In such embodiments, the tracking system 100may only notify the user if the user's mobile device is located within athreshold distance of the car tracking device. For example, the trackingsystem 100 may notify the user if a phone charger tracking device is notlocated within a first threshold distance of a car tracking device ifthe user is located within a second threshold distance of the cartracking device (e.g. if the user is in the car and about to leave).

In some embodiments, the tracking system 100 provides notifications tothe user's mobile device if the user is traveling and based on whetherthe travel tracking device is located within a threshold distance of theuser's mobile device. For example, if the user is on an airplane, theuser may be notified that a travel tracking device (e.g. a luggagetracking device, a laptop tracking device, a phone tracking device) isnot on the user's airplane if the travel tracking device is not locatedwithin a threshold distance of the user's mobile device or a trackingdevice coupled to the airplane. Additionally, the tracking system 100may notify the user of a travel tracking device that is potentially lostif the travel tracking device is within a threshold distance of anairplane tracking device and not within a threshold distance of theuser's mobile device (e.g. the user left the travel tracking device onthe airplane).

In some embodiments, the tracking system 100 notifies the user that theuser's luggage was sent to the wrong airport. The tracking system 100can notify the user of such a state if the user's mobile device islocated within a threshold distance of one airplane tracking device, anda luggage tracking device is located within a threshold distance ofanother airplane tracking device (or a community member's mobile device)that is at a different airport from the airport of the first airplane.

In some embodiments, the tracking system 100 notifies the user if theuser has potentially lost a tracking device coupled to the user'spassport. If a passport tracking device is not located within athreshold distance of the user's mobile device or other travel trackingdevices (such as a luggage tracking device, a travel bag trackingdevice, etc.) while the user's mobile device or the travel trackingdevices are at a travel hub (e.g. airport, seaport, train station), theuser may be notified that the passport tracking device is potentiallylost.

In some embodiments, the tracking system 100 notifies the user that atracking device may have been stolen from the user's car if the trackingdevice is not located within a threshold distance of a car trackingdevice. For example, if the user leaves a tracking device coupled to alaptop in a car, and the laptop tracking device is not located within athreshold distance of the car tracking device, the user may be notifiedthat the laptop tracking device has left the car. The tracking system100 may only notify the user that a tracking device is potentiallystolen if the user's mobile device is not detected within a thresholddistance of the car tracking device during the time period in which thepotentially stolen tracking device was determined to be outside thethreshold distance from the car. For example, a user may have left alaptop tracking device in a car, and as a result, the laptop trackingdevice may be within a threshold distance of a car tracking device. Ifthe laptop tracking device is determined to be outside the thresholddistance from the car tracking device before the user returns to the car(e.g. when the user's mobile device is within a threshold distance ofthe car tracking device), the user can be notified that the laptoptracking device has been stolen.

In some embodiments, the tracking system 100 notifies the user when atracking device associated with a child is not located within athreshold distance of the user's mobile device. For example, a trackingdevice may be coupled to the child's phone, jacket, backpack, shoes, ortoys. The user may configure the threshold distance of the childtracking device based on where the child is. For example, if the childis at the park, the threshold distance may be larger than if the childis at a theme park. In some embodiments, the user is notified when thechild tracking device is not located within a threshold distance ofanother tracking device, such as a tracking device given to a babysitter to locate the child tracking device. In these embodiments, if thechild tracking device is not located within a threshold distance of theother tracking device, the tracking system 100 may notify the userthrough the user's mobile device that the child tracking device isoutside the threshold distance of the user's mobile device or anothertracking device.

In some embodiments, the tracking system 100 will notify the user of apotentially lost tracking device when the user's mobile device is at aparticular geographic location/within a geographic boundary and when thetracking device is not located within a threshold distance of the user'smobile device. For example, if the user's mobile device is at a store,the tracking system 100 may notify the user of a potentially lost wallettracking device if the wallet tracking device is not located within athreshold distance of the user's mobile device while the user is at thestore. The tracking system 100 may flag one or more tracking devicesfrom a particular collection of tracking devices depending on whichgeographic location or geographic boundary the mobile device is in. Forexample, if the mobile device is at the airport, the tracking system 100may notify the user if a travel tracking device is not located within athreshold distance of the mobile device or another travel trackingdevice. If the mobile device is at the gym, the tracking system 100 maynotify the user if a gym bag tracking device is not located within athreshold distance of the mobile device or another workout trackingdevice. If the mobile device is at the beach, the tracking system 100may notify the user if a beach gear tracking device is not locatedwithin a threshold distance of the mobile device or another beachtracking device. If the mobile device is at work, the tracking system100 may notify the user if a work tracking device is not located withina threshold distance of the mobile device or another work trackingdevice. If the mobile device is at a campsite, the tracking system 100may notify the user if a camping tracking device is not located within athreshold distance of the mobile device or another camping trackingdevice.

Geographic Location:

The tracking system 100 can identify a tracking device 106 aspotentially lost in response to determining that the tracking device ismore than a threshold distance from a selected geographic location (forinstance, defined by geographic coordinates), or outside of an areadefined by a selected geographic boundary (for instance, boundariesassociated with a house or building, boundaries associated with propertylines or a property lot, and the like). The geographic location orgeographic boundary can be defined or selected by a user, for instance,via an interface of the mobile device 102 or of the tracking system 100.For example, a user can define a set of GPS coordinates as a selectedlocation, or can draw a set of geographic boundaries within a mapinterface. In some embodiments, a user can select a threshold distanceor can change a pre-set threshold distance for use in conjunction with aselected geographic location (such that tracking devices located morethan the selected threshold distance are identified as potentiallylost).

The geographic location or geographic boundary can also be selected (forinstance, by the tracking system 100) based on historical location dataassociated with the tracking device 106, a user, or a mobile device 102associated with the user. For instance, if a tracking device 106 iscommonly located within a geographic boundary associated with a user'swork building during week day working hours, the geographic boundary canbe selected by the tracking system 100 for use in determining if thetracking device is potentially lost. Likewise, if a tracking device 106is commonly located within a threshold distance of a user's home on theweekend, a geographic location corresponding to the user's home (e.g., aset of GPS coordinates over which the user's home is located) can beselected by the tracking system 100 for use in determining if thetracking device is potentially lost.

In some embodiments, the tracking system 100 can identify a potentialgeographic location or geographic boundary for use in determining if atracking device 106 is potentially lost based on historical locationdata associated with the tracking device, a user, or a mobile device ofthe user, and can present the potential geographic location orgeographic boundary to the user. For instance, an application associatedwith the tracking system 100 can display a set of selectable potentialgeographic locations or geographic boundaries to the user, and candisplay information associated with the historical location data uponwhich each potential geographic location or geographic boundary isidentified (for instance, the application can display a potentialgeographic location in conjunction with the text “recommended based onthe location of this tracking device during weekdays between the hoursof 9 am and 5 pm”). If the user selects the potential geographiclocation or geographic boundary, the tracking system 100 can store thegeographic location or geographic boundary for future use in determiningif the tracking device 106 is lost.

The tracking system 100 can determine that a tracking device 106 is notlocated within a threshold distance of a geographic location or is notlocated within a geographic boundary if 1) a location of the trackingdevice is received from a community mobile device 104 and 2) if thereceived location is more than a threshold distance away from thegeographic location or is located outside of the geographic boundary.Alternatively, the tracking system 100 can determine that a trackingdevice 106 is located more than a threshold distance away from ageographic location or outside of a geographic boundary in responseto 1) determining that a mobile device 102 of a user is located withinthe threshold distance of the geographic location or within thegeographic boundary and 2) determining that the tracking device is notlocated within the communicative or transmission range of the mobiledevice (for instance, by determining that the mobile device cannotcommunicatively couple to the tracking device). In such embodiments, thecommunicative or transmission range of the mobile device 102 can begreater than the range defined by the geographic location and thethreshold distance, and greater than the range defined by the geographicboundary.

FIG. 7 illustrates a flowchart for a method of identifying a trackingdevice as potentially lost based on a threshold distance from ageographic location, according to one embodiment. Alternate embodimentsmay contain more, fewer, or different steps, or the steps may beperformed in an order different from the one shown in FIG. 7.

The tracking system 100 receives 700 a location of a user's trackingdevice. In some embodiments, the tracking device location is receivedfrom a mobile device of a user different from the user to whom thetracking device belongs. The tracking system 100 determines 710 if thetracking device location is more than a threshold distance from ageographic location. As described above, in alternate embodiments, thetracking system determines if the tracking device location is outside ofa geographic boundary. If the tracking system 100 determines that thetracking device location is more than the threshold distance from thegeographic location (or outside the geographic boundary), the trackingsystem identifies 720 the tracking device as potentially lost. Thetracking system 100 generates 730 a notification identifying thetracking device and indicating that the tracking device is potentiallylost, and provides 740 the generated notification to the user's mobiledevice. The user's mobile device can be configured to display thenotification to the user.

Examples: In some embodiments, the tracking system 100 notifies the userwhen a tracking device coupled to a set of keys leaves a geographicboundary. For example, if a business provides a set of keys to atemporary employee or a contractor, the tracking system 100 may notifythe user when a keys tracking device is not located within a thresholddistance of a geographic location or within a geographic boundaryassociated with an office of the business.

In some embodiments, a tracking device is coupled to a lifting weight orsome other piece of exercise equipment and the tracking system 100notifies the user when the lifting weight tracking device leaves a gym.Each lifting weight or piece of exercise equipment in a gym may becoupled to a tracking device and the notification to the mobile devicemay include information that identifies which lifting weight was notlocated within the gym.

In some embodiments, if the mobile device is located near a touristdestination and a tracking device coupled to a camera is located withina threshold distance of the mobile device, the tracking system 100 maynotify the user through the mobile device that they may want to take outtheir camera and take pictures of the tourist destination.

In some embodiments, the tracking system 100 notifies the user that theuser's car is potentially stolen if the car tracking device coupled tothe user's car is located outside of a threshold distance from thegeographic location where the user parked the car. The tracking systemcan determine a geographic location for where the user parked the carbased on the geographic location of the car tracking device when themobile device exceeded a threshold distance away from the car trackingdevice (e.g., when the user walked more than a threshold distance awayfrom the car). If the car tracking device is located more than athreshold distance from the parking location, the tracking system 100can notify the user that the car has potentially been stolen.

In some embodiments, the tracking system 100 notifies a user if atracking device is not located within a room or a house. For example, ifa tracking device is coupled to an object that is not supposed to leavea room (e.g. a remote control, reading glasses), the tracking system 100may notify the user if the tracking device leaves the room/is notlocated within the room. The tracking system 100 may also notify theuser that a tracking device coupled to a valuable item (such as a safe,a jewelry box, artwork, a television, a computer, etc.) may have beenstolen from a house if the tracking device coupled to the valuable itemis not located within the house.

In some embodiments, the tracking system 100 notifies the user if theirchild is not at a geographic location at which the child is supposed tobe. If a tracking device associated with the child (e.g., a trackingdevice coupled to the child's bag or jacket) is not located within athreshold distance of a geographic location or within certain geographicboundaries (e.g. home, school, art/performance/music lessons, sportpractice, friend's house), the user may be notified that the child isnot located where they are supposed to be and may be provided with thelocation of the child tracking device.

In some embodiments, the tracking system 100 notifies the user if atracking device coupled to a pet is not located within a thresholddistance of the user's home or within the geographic boundaries of theuser's home. For example, if the user's pet escapes or is stolen, thetracking system 100 can notify the user that the pet tracking device isnot located within the user's home and can provide the location of thepet tracking device. In some embodiments, the tracking system 100notifies the user if the pet tracking device enters a particular part ofthe user's home. For example, if the pet is not supposed to be insidethe house or not supposed to be in a particular room of the house, thetracking system can notify the user that the pet tracking device is notwhere it is supposed to be based on whether the pet tracking device isor is not located within a threshold distance of a geographic locationor whether the pet is or is not located within a geographic boundary.

Tracking Device Behavior:

The tracking system 100 can identify a tracking device 106 aspotentially lost in response to a comparison of current tracking devicebehavior and location and historical tracking device behavior andlocation. For instance, the tracking system 100 can determine that atracking device 106 commonly accompanies a user on the user's way towork based on an analysis of historical location data associated withthe tracking device, and can flag the tracking device as potentiallylost in response to determining that the tracking device is notaccompanying the user on the user's way to work. Likewise, the trackingsystem 100 can determine that the tracking device 106 typically does notmove between the hours of 10 am and 4 pm on weekdays based on ananalysis of historical movement behavior associated with the trackingdevice, and can flag the tracking device as potentially lost in responseto a determination that the motion of the tracking device exceeds apre-determined motion threshold during this time interval. In addition,the tracking system 100 can determine that the tracking device 106commonly communicatively connects with a mobile device 102 of a userafter 10 pm on weekends based on an analysis of historical communicationdata associated with the tracking device, and can flag the trackingdevice as potentially lost in response to a determination that thetracking device has not communicatively connected to the mobile deviceon a weekend day after 10 pm after the passage of a threshold amount oftime.

The tracking system 100 can predict a future state of the trackingdevice 106 based on a comparison of historical data associated with thetracking device. For instance, the tracking system 100 can determinethat a tracking device 106 commonly travels between a first location anda second location between the hours of 5 pm and 6 pm, and can predictthat the tracking device will be located at the second location after 6pm in the event that the tracking device is outside the communicativerange of a user's mobile device. Continuing with this example, thetracking system 100 can determine that the tracking device 106 commonlytakes 30 minutes to reach the second location after leaving the firstlocation, and can predict that the tracking device will reach the secondlocation approximately 30 minutes after detecting that the trackingdevice has left the first location. Historical data analyzed by thetracking system 100 can include when, where, or how often the trackingdevice connects with the mobile device. In some embodiments, thetracking system 100 can analyze historical behavior of other trackingdevices for use in predicting a state of the tracking device 106. Insuch embodiments, historical location and movement patterns of othertracking devices can be used to predict a location and/or movement ofthe tracking device 106 in response to a determination that the trackingdevice is undergoing similar location and movement patterns.

Examples: In some embodiments, the tracking system 100 identifiescollections of tracking devices, as described above, for instance basedon a history of the tracking devices tending to be located near eachother or based on a collection definition from a user, and can notifythe user that a tracking device of a collection is lost if the trackingdevice is not located near tracking devices in a collection. Forexample, the tracking system may determine that a keys tracking deviceand a wallet tracking device are typically located near each other, andthus may include the keys tracking device and the wallet tracking devicein a collection. If the keys tracking device is subsequently not locatednear the wallet tracking device, the user may be notified that the keystracking device or the wallet tracking device is potentially lost. Insome embodiments, the tracking system 100 identifies tracking devicesthat are typically located near each other and may prompt the user tocreate a collection of the tracking devices or to add one or more of thetracking devices to an existing collection. For example, if the trackingsystem 100 determines that a toiletry bag tracking device is typicallylocated near a suitcase tracking device, the tracking system 100 mayprompt the user to add the toiletry bag tracking device to a traveltracking device collection.

In some embodiments, the tracking system 100 can notify the user that acar tracking device is potentially stolen based on the behavior of thecar tracking device. For example, if the car tracking device istypically parked within a threshold distance of a geographic locationduring particular hours (e.g. while the user is typically home orasleep), the tracking system 100 may notify the user if the car trackingdevice is not located within that threshold distance. The trackingsystem may also determine that a keys tracking device is typicallylocated near the car tracking device when the car tracking device ismoving, and may notify the user that the car tracking device ispotentially stolen if the car tracking device is moving when not nearthe keys tracking device.

In some embodiments, the tracking system 100 can notify the user that acar coupled to a tracking device has been in a car accident. Thetracking system 100 may determine if the car tracking device stopssuddenly or begins to move erratically and may identify that behavior asindicative of a car accident. The tracking system 100 may send anotification to the user about the potential car accident, and thenotification may include an option to automatically send emergencyassistance (e.g. an EMT, paramedic, fire fighters, the police) to thelocation of the car tracking device. If the mobile device is not locatednear the car tracking device, the notification may include the locationof the car tracking device. If the mobile device is located near the cartracking device (e.g. within a threshold distance), the tracking system100 may automatically notify an emergency assistance service (e.g. 911)of the car accident and may transmit the location of the car trackingdevice or the mobile device to the emergency assistance service.

In some embodiments, the tracking system 100 can notify the user with anestimate for how long it will take for the user's luggage to arrive atthe luggage carousel from an airplane. The tracking system 100 mayanalyze the amount of time it takes luggage tracking devices of otherusers to arrive at the luggage carousel and provide an estimate based onthose amounts of time. In some embodiments, the tracking system 100determines an estimate for the amount of time will take for a luggagetracking device to arrive at the luggage carousel based on which airportthe user has arrived at. The tracking system 100 may also analyze thepaths luggage tracking devices take in an airport from an airplane to aluggage carousel and, based on those paths, provide a real-time timeestimate to the user. For example, if the average wait time is 30minutes and the luggage tracking device is half way to the luggagecarousel from the airplane, the tracking system 100 may update the waittime estimate to 15 minutes.

In some embodiments, the tracking system 100 notifies the user if atracking device typically does not move and the tracking device suddenlybegins to move. For example, a tracking device may be coupled to anobject that typically does not move, such as a piece of art, a safe, anunused car, a desktop computer, a passport, or a file cabinet. If thetracking device moves (e.g. is located in a location different fromwhere it was originally, or a motion-detection sensor of the trackingdevice, such as an accelerometer, detects movement), the tracking system100 may notify the user that the tracking device is potentially lost orstolen. In some embodiments, the tracking system 100 only notifies theuser that the tracking device has moved if the mobile device is notlocated within a threshold distance of the tracking device.

In some embodiments, the tracking system 100 notifies the user if a petcoupled to a pet tracking device is taken for a walk. The trackingsystem 100 may determine if a pet is being taken out for a walk if thepet tracking device is following a path that the pet tracking devicefollows regularly (e.g. weekly, when a pet walker comes to walk thepet). If the pet tracking device deviates from paths the pet trackingdevice has taken in the past, the tracking system 100 may notify theuser that the pet is potentially lost rather than that the pet is on awalk. Additionally, if the tracking system 100 determines that the petis on a walk but that the path taken by the pet tracking device isdifferent from a typical path of a walk (e.g. significantly longer orshorter), the tracking system 100 may provide a notification describingthe difference to the user.

User Behavior:

The tracking system 100 can identify a tracking device 106 aspotentially lost in response to a comparison of current user locationand behavior and historical user location and behavior. For instance,the tracking system 100 can determine that a user commonly brings atracking device 106 with the user during particular times of the day(determined, for instance, based on historical communicative connectionsbetween the tracking device and a mobile device 102 of the user). Insuch instances, if the user is determined to not have the trackingdevice 106 during similar times of the day, the tracking system 100 canflag the tracking device as potentially lost. Likewise, the trackingsystem 100 can determine that when a mobile device 102 of a user ishistorically communicatively connected to a first tracking device in acollection of tracking devices, the user is historically commonlyconnected to the remaining tracking devices in the collection oftracking devices. In such instances, if the user's mobile device 102 iscommunicatively connected to the first tracking device in the collectionbut not the second tracking device in the collection, the trackingsystem 100 can flag the second tracking device as potentially lost.

The tracking system 100 can predict a state of a tracking device 106based on historical user location and behavior. For instance, thetracking system 100 can determine that users commonly bring a particulartype of object coupled to a tracking device when the users move from afirst location to a second location. In such instances, the trackingsystem 100 can determine that the user of a tracking device 106 coupledto the particular type of object is in the first location, and canpredict that the user will want to bring the object to the secondlocation. Likewise, the tracking system 100 can determine that a usercommonly drives a particular vehicle on weekend mornings, and canpredict that the user will need to bring the user's wallet coupled to atracking device 106 before the user drives the vehicle.

FIG. 8 illustrates a flowchart for a method of identifying a trackingdevice as potentially lost based on historical movement behavior,according to one embodiment. Alternate embodiments may contain more,fewer, or different steps, or the steps may be performed in an orderdifferent from the one shown in FIG. 8.

The tracking system 100 determines 800 a current movement behavior of auser's tracking device, and determines 810 a historical movementbehavior. The historical movement behavior can be historical movementbehavior of the tracking device, the user, or the user's mobile device.It should also be noted that in some embodiments, the tracking system100 can determine a current movement behavior of a user, or of a user'smobile device. The tracking system 100 determines if the currentmovement behavior differs from the historical movement behavior. If thecurrent movement behavior differs from the historical movement behavior(e.g. by more than a threshold amount), the tracking system identifies830 the tracking device as potentially lost. The tracking system 100generates 730 a notification identifying the tracking device andindicating that the tracking device is potentially lost, and provides740 the generated notification to the user's mobile device. The user'smobile device can be configured to display the notification to the user.

Examples: In some embodiments, the tracking system 100 notifies the userif the user has potentially dropped a tracking device. For example, ifthe tracking system 100 detects that the user may have dropped atracking device coupled to the user's keys or wallet, the trackingsystem 100 may notify the user that the tracking device was potentiallydropped and provide the location of the tracking device to the user inthe notification. The tracking system 100 may detect a dropped trackingdevice if the tracking device is moving similarly to and in conjunctionwith the mobile device and the tracking device stops moving while themobile device keeps moving, or the movement of the tracking devicediffers by more than a threshold from the movement of the mobile device.In some embodiments, the tracking system 100 provides notifications tothe user based on the user's routine. If the user regularly visits alocation during a particular time period and brings one or more trackingdevices while visiting the location, the tracking system 100 may providenotifications to the user that remind the user to bring the trackingdevices or notify the user that they potentially forgot to bring one ormore of the tracking devices. For example, if the user visits a gymevery week, the tracking system 100 may provide notifications to theuser to bring gym tracking devices (e.g. a gym shoes tracking device ora gym bag tracking device) to the gym. Similarly, if the user travelsregularly, the tracking system 100 may notify the user to bring traveltracking devices (e.g. a passport tracking device or a luggage trackingdevice) before the user travels to the airport. If the user is a studentand goes to class regularly, the tracking system 100 can provide anotification to bring tracking devices coupled to class supplies (e.g.textbooks, a laptop, pencil case, notebook, homework/homework folder),or may notify the user if the user has potentially forgotten a classsupply tracking device. In some embodiments, the user can specifyroutine activities for which the tracking system 100 should providenotifications or can specify time ranges during which the trackingsystem 100 should provide notifications. For example, if the user goesto the gym on Tuesdays, the user may specify to the tracking system 100to provide reminder notifications about gym tracking devices on Tuesdaysor when the user is going to or at the gym.

In some embodiments, the tracking system 100 can provide remindernotifications to the user to use objects that the user needs to interactwith regularly. The tracking system 100 may determine if the user isnear a tracking device coupled to one of the objects and, if the userhas not been near the tracking device within a certain time period, thetracking system 100 may notify the user to use the object coupled to thetracking device. For example, the user may be notified to use a pillbox/medicine, a toothbrush, a mouth guard, or weights/exerciseequipment. In some embodiments, the tracking device is coupled to anobject that is related to a chore the user needs to perform on a regularbasis, such as a pet food bowl, a mailbox, a washer/dryer, a dishwasher,a sink, or a trash can.

External Data:

The tracking system 100 can identify a tracking device 106 aspotentially lost or can predict a state of the tracking device based ondata received from an external data source 112. The external data source112 can be an external database, a website, a digital or networkservice, an external device or system, a communication, or any othersuitable source. In some embodiments, data can be requested from theexternal data source 112 by the tracking system 100 or a mobile device102, for instance via an API associated with the external source. Thedata can be requested from the external data source 112 at the explicitrequest of a user of the mobile device 102, periodically, or in responseto the occurrence of an event (for instance, the movement of a trackingdevice 106, the communicative coupling of the tracking device to themobile device, locating the tracking device, the movement or location ofthe user, or any other suitable criteria).

FIG. 9 illustrates a flowchart for a method of identifying a trackingdevice as potentially useful to user based on external data, accordingto one embodiment. Alternate embodiments may contain more, fewer, ordifferent steps, or the steps may be performed in an order differentfrom the one shown in FIG. 9.

The tracking system 100 determines 900 a location of a user's trackingdevice, where the tracking device is coupled to an object. The trackingsystem 100 determines 910 a location of a user, and determines 920whether the tracking device location is more than a threshold distancefrom the user's location. If the tracking device location is more thanthe threshold distance from the user location, the tracking system 100accesses 930 external data from an external source, where the externaldata is associated with the object coupled to the tracking device. Thetracking system 100 determines 940 that possession of the object islikely to be useful to the user based on the external data. The trackingsystem 100 generates 950 a notification identifying the tracking deviceand recommending that the user obtain the object, and provides 960 thegenerated notification to the user's mobile device. The user's mobiledevice can be configured to display the notification to the user.

Examples: In some embodiments, the tracking system 100 receivesfinancial transaction information from a bank or a budgeting system todetect fraudulent charges to the user's account. The tracking system 100may receive information identifying transactions charged to the user'scredit card and identifying where the transactions occurred. If atransaction occurred at a store that the wallet tracking device has notbeen in or was not in at the time of the transaction, the trackingsystem 100 may notify the user that the transaction at the store ispotentially fraudulent. In some embodiments, the notification of thepotential fraudulent charge may include an option to notify the creditcard company of the fraudulent charge.

In some embodiments, the tracking system 100 receives sales informationfrom a vendor system regarding sales that are available near the userbased on tracking devices near the user. If the tracking system 100detects that a tracking device is near the user (e.g. within a thresholddistance of the mobile device), and the tracking device is coupled to anobject, the tracking system 100 may provide a notification withinformation about a sale that is relevant to the object. For example, ifthe user is carrying a gym bag tracking device and is walking through astore, the tracking system 100 may notify the user that there is a saleon energy drinks or water. In some embodiments, the tracking system 100provides notifications with sales information based on a tracking devicenot being located near the user. For example, if the user is carrying aluggage tracking device, but a toiletry bag tracking device is notlocated near the user, the tracking system 100 may notify the user ofsales to purchase toiletries in a nearby store.

In some embodiments, the tracking system 100 receives parking regulationinformation from a database. The parking regulation information maydescribe where a user can park a car and for how long the user can parkthe car there. The tracking system 100 can provide notifications to auser if the user has parked their car in a spot for too long. Forexample, if a car tracking device is located in a parking spot that hasa two hour parking limit, the user may be notified after an hour and ahalf that the car tracking device needs to be moved soon. If the userpaid a parking meter for the parking spot, the tracking system 100 mayprovide a notification to the user when the parking meter timer isgetting low, and the notification may include an option to pay moremoney into the parking meter. In some embodiments, the tracking system100 determines which parking meter is associated with the car trackingdevice based on the location of the car tracking device. Additionally,the tracking system 100 may notify the user if the car tracking deviceis potentially parked in a parking spot that the car is not allowed tobe parked in. For example, if street parking on a street is restrictedon Mondays and the car tracking device is located on the restrictedstreet on a Monday, the user may be notified that their car ispotentially parked illegally.

In some embodiments, the tracking system 100 receives information abouta user's schedule and provides notifications to the user based on theuser's schedule. The schedule information can include information abouta user's calendar from a calendaring system or a user's messages (e.g.emails, texts, instant messages) from a messaging system. The scheduleinformation may describe events the user must attend, including what theevents are, when they are, and where they are. The tracking system 100may provide notifications to the user to remind the user to bringcertain tracking devices to an event or to notify the user that theypotentially left a tracking device behind. For example, the trackingsystem 100 may remind the user to bring a wallet tracking device, a keystracking device, a watch tracking device, or a glasses tracking deviceto events on the user's schedule. In some embodiments, the trackingsystem 100 provides a notification to the user based on what event is onthe user's schedule. For example, if the schedule information shows thatthe user is going to class and does not have a class tracking device(e.g. a textbook tracking device, pencil case tracking device, notebooktracking device), the tracking system 100 may notify the user that theypotentially forgot the class tracking device. In some embodiments, theschedule information includes the type of the class (e.g., Biology,English, History) the user needs to attend, and the tracking system 100may identify the class tracking device as potentially lost based on thetype of the class.

In some embodiments, the tracking system 100 receives travel informationfor the user from a travel agency or a transport service and providesnotifications based on the travel information. The travel informationcan include the user's start location, destination, departure time,arrival time, or transportation hubs the user may be traveling through.In some embodiments, the travel information is determined based on theuser's emails or calendar received by the tracking system 100. Thetracking system 100 may provide a notification to the user to packcertain objects based on the user's destination. For example, if theuser is traveling to a cold place and a jacket tracking device is notlocated near a luggage tracking device, the tracking system 100 maynotify the user that they should pack a jacket. The tracking system 100can notify the user that their luggage is potentially lost if a luggagetracking device is not located at the correct transportation hub(determined based on information received from a travel system) when theuser arrives at the transportation hub. For example, if a luggagetracking device is located at an airport that is different from the onethe user arrived at, the user may be notified that the luggage trackingdevice is at the wrong airport.

In some embodiments, the tracking system 100 can notify a travel hub ora transportation service if a user's luggage takes a long time to reacha luggage carousel or if the user's luggage was lost. The trackingsystem 100 can determine if a user's luggage took a long time to reach aluggage carousel or if the user's luggage was lost based on the locationof a luggage tracking device. If the tracking system 100 notifies thetravel hub or transportation service about delayed or lost luggage, thetracking system 100 may receive a coupon, gift card, offer, or the likefor the user from the travel hub or transportation service. For example,the travel hub or transportation service may provide the user with anoffer for a free coffee or a discount on a future trip.

In some embodiments, the tracking system 100 receives weatherinformation from a weather service and can provide notifications to theuser based on the weather information. The weather information includesinformation about the weather in a geographic area, including high andlow temperatures, rain/snow forecasts, wind forecasts, or humidityforecasts. The tracking system 100 may provide notifications to the userif the user is not located near a tracking device coupled to an objectthat will be necessary or helpful for the forecasted weather in theweather information. For example, if the weather information forecastsrain in the user's geographic area and a jacket tracking device is notlocated near the user, the tracking system 100 may notify the user thatit will rain soon and that the user does not have their jacket. The usermay receive a similar notification if the user is not located near anumbrella tracking device, a rain boot tracking device, or a hat trackingdevice. Similarly, if the weather information forecasts snow in theuser's geographic area, the tracking system 100 may provide the userwith a notification reminding them to bring a coat tracking device, anear muff tracking device, or a scarf tracking device. If the weatherinformation forecasts warm weather in the user's geographic area, thetracking system 100 may provide the user with a notification remindingthem to bring a water bottle tracking device, a sunscreen trackingdevice.

In some embodiments, the tracking system 100 receives information aboutnatural disasters or emergency situations near the user and may notifythe user of the locations of tracking devices coupled to emergencysupplies. Examples of natural disasters can include flooding,hurricanes, tornados, earthquakes, and forest fires. Examples ofemergency situations can include power outages, water outages, policeactivity, and building fires. The tracking system 100 can notify a userof the location of tracking supplies coupled to emergency supplies,including a fire extinguisher, extra water, extra food, and flashlights.In some embodiments, the tracking system 100 notifies the user of thelocation of a tracking device coupled to an object carried by the user'schild if the tracking system receives information about a naturaldisaster or emergency situation.

Sensor Data:

The tracking system 100 can identify a tracking device 106 aspotentially lost or can predict a state of the tracking device based ondata received from one or more tracking device sensors. The trackingdevice sensors can include one or more of: movement sensors (such asaccelerators, gyroscopes, and the like), location determination sensors(such as a GPS transceiver, altimeters, and the like), orientationsensors, proximity sensors, communication sensors (such as a Bluetoothantenna or a Wifi antenna), temperature sensors, pressure sensors, lightsensors, touch sensors (such as a capacitive touch screen), audiosensors (such as a microphone), or any other suitable sensor. Thetracking device 106 can obtain sensor data in response to requestingsensor data from the sensors, automatically (as the sensorsreceive/generate the data), in response to a request from a mobiledevice 102 or a user of the mobile device, in response to a request fromthe tracking system 100, and the like. The tracking device 106 canforward the sensor data to a mobile device 102, which in turn canforward the sensor data to the tracking system 100.

The tracking system 100 can identify a tracking device 106 aspotentially lost based on sensor data received from the tracking device.For instance, if a user leaves the tracking device 106 at home, andsensor data is received from the tracking device indicating that thetracking device has moved, the tracking system 100 can identify thetracking device as potentially lost (or in this case, potentiallystolen). Likewise, if sensor data is received from a first trackingdevice indicating that a temperature has fallen below a particularthreshold, the tracking system can predict that a user might need anobject coupled to a second tracking device in order to stay warm.

FIG. 10 illustrates a flowchart for a method of identifying a trackingdevice as potentially lost based on sensor data, according to oneembodiment. Alternate embodiments may contain more, fewer, or differentsteps, or the steps may be performed in an order different from the oneshown in FIG. 10.

The tracking system 100 determines 1000 a location of a user's trackingdevice that is coupled to an object. The tracking system 100 determines1010 a location of a user, and determines 1020 whether the trackingdevice location is more than a threshold distance from the user'slocation. If the tracking device location is more than the thresholddistance from the user location, the tracking system 100 accesses 1030sensor data from one or more sensors within the tracking device. Thetracking system 100 identifies 1040 identifies the tracking device aspotentially lost based on the sensor data. The tracking system 100generates 1050 a notification identifying the tracking device andidentifying the tracking device as potentially lost, and provides 1060the generated notification to the user's mobile device. The user'smobile device can be configured to display the notification to the user.

Examples: In some embodiments, the tracking system 100 usesaccelerometer data from an accelerometer in a tracking device todetermine if the user has dropped the tracking device and may identifythe tracking device as potentially lost. For example, if theaccelerometer data describes a sudden downward acceleration of thetracking device and then a sudden deceleration as the tracking devicereaches the ground, the tracking system 100 may notify the user that theuser potentially dropped the tracking device. In some embodiments, thetracking system 100 only notifies the user that the tracking device ispotentially lost if the tracking device is not located within athreshold distance of the user.

In some embodiments, the tracking system 100 uses thermometer data froma thermometer in a tracking device to notify a user if an area is toowarm or too cold for an object coupled to the tracking device or if thetracking device is outside when it should not be. The tracking system100 may notify the user that the tracking device is potentially lost orthat the tracking device is outside. For example, if the user leavestheir pet outside on a cold day and thermometer data from a pet trackingdevice indicates that the temperature is below a threshold, the trackingsystem 100 may notify the user that it is potentially too cold outsidefor the pet. Similarly, if the user leaves a laptop tracking deviceoutside, the tracking system 100 may notify the user that the laptop ispotentially lost based on thermometer data from the tracking device thatit is warm. Such a tracking device can be coupled to a laptop, a child,a pet, a book, a wallet, keys, or any other object a user may leaveoutside.

In some embodiments, the tracking system 100 uses altimeter data from analtimeter in a water bottle tracking device to notify the user to drinkwater to keep hydrated. If the tracking system 100 determines that thewater bottle tracking device is located near the user, and the altimeterdata from the water bottle tracking device indicates that the waterbottle tracking device is at a high altitude, the tracking system 100may provide a notification to the user to drink from the water bottle tokeep hydrated. Similarly, if the user is at a high altitude and a waterbottle tracking device is not located near the user, the user may benotified that the water bottle tracking device is lost or that the waterbottle tracking device should be brought with the user when the usergoes outside. If the user is at a high altitude, the tracking system 100also may notify the user to use or find a tracking device coupled tosunscreen, a hat, a jacket, a backpack, sunglasses, or any other objectthat may be helpful in a high-altitude environment. In some embodiments,the tracking system uses thermometer data from a thermometer in thewater bottle tracking device to notify the user to drink water.

In some embodiments, the tracking system 100 receives barometer datafrom a barometer in a tracking device to determine if it is about torain. If the barometer data indicates that it is about to rain (e.g. thebarometric pressure begins to drop) and a rain-gear tracking device(e.g. a jacket tracking device) is not located near the user, thetracking system 100 may notify the user that the rain-gear trackingdevice is lost or that the user should bring the rain-gear trackingdevice when going outside.

In some embodiments, the tracking system 100 uses audio data from anaudio sensor in a tracking device to determine if an object coupled tothe tracking device is potentially being stolen. If the audio data froma tracking device indicates that a window or a door has been broken, thetracking system 100 may notify the user that someone may be breakinginto their house and may identify the tracking device as potentiallylost. The tracking system 100 also may use accelerometer data todetermine if a tracking device coupled to an object has been stolen. Forexample, if audio data indicates that a window has been broken and/oraccelerometer data indicates that the tracking device is moving, thetracking system 100 may notify the user that the tracking device haspotentially been stolen and may identify the tracking device aspotentially lost.

It should be emphasized that in some embodiments, identifying a trackingdevice as lost or predicting a state of a tracking device can be basedon any combination of the above circumstances. For example, a trackingdevice can be identified as potentially lost based on a proximity of thetracking device to other tracking devices and based on historicalbehavior of the tracking device. Likewise, a state of the trackingdevice can be predicted based on a combination of a movement of thetracking device and based on sensor data received from the trackingdevice.

Examples: In some embodiments, the tracking system 100 uses audio datafrom an audio sensor in a tracking device and the tracking device'sproximity to a geographic location to notify the user that the trackingdevice has potentially been stolen. If the audio data from a trackingdevice indicates that a window or a door has been broken, and thetracking device is not located within a threshold distance of ageographic location or within certain geographic boundaries (e.g. auser's home), the tracking system 100 may notify the user that thetracking device has potentially been stolen.

In some embodiments, the tracking system 100 can notify the user ofpotential fraudulent financial transaction based on the behavior of awallet tracking device. The tracking system 100 can receive financialtransaction information from a bank or a budgeting system. If thefinancial transaction information describes a financial transaction at astore, but the historical behavior of the wallet tracking devicesuggests that the user has not been in the store, the tracking system100 may notify the user of the potentially fraudulent financialtransaction. For example, if the financial transaction informationincludes a credit card charge at a first restaurant on a Wednesday,however the wallet tracking device is typically located in anotherrestaurant on Wednesdays, the tracking system 100 may notify the user ofthe potentially fraudulent charge at the first restaurant.

The tracking device system 100 can prompt a user of a mobile device 102to opt-in to one or more types of interventions, for instance via amobile device interface. For example, the tracking system 100 candetermine that a tracking device 106 is part of a tracking devicecollection, and can suggest to a user of a mobile device 102 that themobile device receive intervention notifications when the distancebetween the tracking device and other tracking devices in the trackingdevice collection exceeds a threshold. If the user opts-in to asuggested intervention, the tracking system 100 stores the opt-in andprovides notifications associated with the intervention in response tothe circumstances associated with the intervention being trigger. If theuser does not opt-in to a suggestion intervention, the tracking system100 will not provide notifications associated with the intervention,even if the circumstances associated with the intervention aretriggered.

FIG. 11 illustrates a flowchart for a method of generating an opt-innotification for identifying a tracking device as potentially lost,according to one embodiment. Alternate embodiments may contain more,fewer, or different steps, or the steps may be performed in an orderdifferent from the one shown in FIG. 11.

The tracking system 100 accesses 1100 criteria for identifying a user'stracking device as potentially lost. The criteria can be associated withone or more properties of the tracking device. The tracking system 100accesses 1110 information associated with the one or more properties ofthe tracking device, and identifies 1120 the tracking device aspotentially lost based on the accessed criteria and the accessedinformation associated with the one or more properties of the trackingdevice. The tracking system 100 generates 1130 an interface including anoption to opt-in to notifications identifying the tracking device aspotentially lost in response to the accessed criteria being satisfied,and provides 1140 the generated interface to the user's mobile device.The mobile device can be configured to display the interface to theuser. In response to the user opting-in to receiving the notifications,the tracking system 100 generates 1150 a notification that the trackingdevice is potentially lost and provides the generated notification tothe mobile device for display to the user.

In some embodiments, the tracking system 100 can prompt a user of amobile device 102, via a notification presented by the mobile device, toconfigure a tracking device 106 to operate in a particular mode based ona predicted state of the tracking device. For instance, if a trackingdevice 106 is predicted to be in motion or is predicted to move to anunfamiliar location, the tracking system 100 can instruct the mobiledevice 102 to display a notification including an option to configurethe tracking device to operate in a high performance mode (e.g., thetracking device can increase a frequency ofadvertisements/communications broadcasted by the tracking device toincrease the likelihood that the tracking device is able tocommunicatively couple to the mobile device or a community mobile device104). Likewise, if a tracking device 106 is predicted to be stationaryfor an interval of time, the tracking system 100 can instruct the mobiledevice 102 to display a notification including an option to configurethe tracking device to operate in a power saving mode (e.g., thetracking device can decrease the frequency ofadvertisements/communications broadcasted by the tracking device inorder to preserve power).

If the user selects to reconfigure the tracking device 106 to operate ina particular mode as suggested by the notification (for instance, byselecting a selectable option displayed by the notification), the mobiledevice 102 can reconfigure the tracking device, and can inform thetracking system 100 that the user reconfigured the tracking device. Inthe future, if the tracking system 100 predicts a similar trackingdevice state, the tracking system can instruct the mobile device 102 tosimilarly configure the tracking device 106 without requiring the mobiledevice to display a similar notification and without requiring the userto affirmatively select to configure the tracking device to operate inthe suggested mode.

Examples: In some embodiments, the tracking system 100 prompts the userto opt into notifications about a luggage tracking device if thetracking system 100 determines the user is traveling. The user canselect to receive notifications about whether the luggage trackingdevice is on the correct airplane, whether the luggage tracking devicearrived at the correct airport, or an estimate for how long it will takefor the luggage tracking device to arrive at a luggage carousel.

In some embodiments, the tracking system 100 prompts the user to optinto or modify the circumstances under which the user is notified when atracking device is not located within a threshold distance of the mobiledevice. For example, if the user leaves a wallet tracking device or akeys tracking device on a desk in the user's office and the user leavesthe office without bringing the wallet tracking device or the keystracking device, the user may not want a notification while the user isstill within the office building. Thus, the tracking system 100 mayprompt the user to adjust the threshold distance for which lostdeterminations are made for one or more tracking devices. Additionally,if the user does not want to receive notifications about a trackingdevice not being located within a threshold distance of the user, theuser may be prompted to disable the notifications regarding thattracking device. For example, if a user lends their car to other people,the user may disable notifications about a car tracking device.

In some embodiments, the tracking system 100 prompts the user toconfigure a tracking device to operate in a particular mode. Forexample, the user may configure a tracking device to operate in a powersaving mode if the tracking device is coupled to an object that ispredicted to be stationary for a period of time, such as a safe,artwork, a desktop computer, a jewelry box, or a television. The usermay also configure a tracking device to operate in a power saving modeif the tracking device is coupled to an object (such as a televisionremote, a pet, or weights/exercise equipment) that is predicted to belocated within a geographic area, such as a home, an office, or a store.The user may configure a tracking device to operate in a highperformance mode if the tracking device is coupled to an object that ispredicted be in an unknown/unfamiliar area or is predicted to move, suchas a car, luggage, a wallet, or keys. In some embodiments, the user mayconfigure a tracking device to operate in different modes based on wherethe tracking device is located. For example, a pet tracking device mayoperate in a power saving mode when the pet tracking device is locatedwithin a home and may operate in a high performance mode if the trackingdevice is located outside the home.

The tracking device interventions described herein can beneficiallyenable a user to know that a tracking device is lost before the usereven realizes the tracking device is lost. Likewise, a tracking deviceintervention can remind a user to bring an object coupled to a trackingdevice with the user when the user moves from a first location to asecond location (e.g., on the way to work) before the user gets too faraway from the first location. In addition, a tracking deviceintervention can suggest a user take an action (such as bringing anobject coupled to a tracking device) based on a predicted state of thetracking device (e.g., the object coupled to the tracking device islikely to be useful to the user). In each of these circumstances, theuser is provided with important or useful information before the userrealizes that such information would be important or useful, therebybeneficially improving a user's experience with the tracking device andthe tracking system 100.

Smart Alerts Based on User Presence

A user's location or presence within a geofence or other predefined areacan be used to configure a mobile device to send indications about atracking device. For instance, the movement of a user outside of ageographic area can be used to configure a mobile device located withthe user to indicate whether a user has possession of a tracking device.FIGS. 12A, 12B, and 12C illustrate an example of sending an indicationto a mobile device upon detecting a tracking device has been left behindwithin a time interval, according to one embodiment. In particular, FIG.12A illustrates a user 103 arriving at a location 1200 with a mobiledevice 102 and a tracking device 106 at a specific time 1210A. As usedherein, the term location 1200 refers to a specific geographic location(i.e. a set of global positioning coordinates). FIG. 12B illustrates theuser 103 at the location 1200 at a later time 1210B than the time whenthe user 103 arrived at the location 1200. In FIG. 12B, the user 103 hasbeen at the location 1200 with the mobile device 102 and tracking device106 for a threshold amount of time since arriving at the location 1200,so the tracking system 100 establishes a geographic boundary 1220 aroundthe location 1200. In FIG. 12C, when the user 103 has moved outside ofthe geographic boundary 1220, the mobile device 102 is configured toscan for the tracking device 106 for an interval of time. In theembodiment of FIG. 12C, mobile device 102 does not detect the trackingdevice 106 within the time interval so the tracking system 100 sends anindication 1230 (i.e., smart alert) to the user 103, informing the user103 that the tracking device 106 has been left behind at the location1200. In embodiments where the mobile device 102 does detect thetracking device 106 within the threshold amount of time, the trackingsystem 100 stores information indicating that the user 103 is inpossession of the tracking device 106.

In order to detect whether a user has possession of a tracking device, atracking system, such as the tracking system 100, can detect the absenceor presence of a tracking device 106 often carried by or within athreshold distance of the user 103 (for instance, a tracking deviceattached to the user's keys, a handbag or backpack of the user, or theuser's vehicle). As described above, a mobile device 102 (such as asmartphone) of the user can receive a transmission from the trackingdevice 106 and, in response, can detect a location of the mobile device102 (for instance, using location-detection functionality, such as a GPSreceiver). The mobile device 102 can then provide the detected locationand an identity of the tracking device 106 to the tracking system 100,and the tracking system 100 can set up a geographic boundary 1220 (orgeofence) around the detected location after a threshold amount of timehas passed while the mobile device 102 has been at the location 1200.The tracking system 100 can continue to monitor the location of themobile device 102 relative to the geographic boundary 1220. When thetracking system 100 detects that the user 103 has moved outside of thegeographic boundary 1220 (via location detection from the mobile device102), the tracking system 100 can determine the presence or absence ofthe tracking device 106 by scanning for the tracking device 106 via themobile device 102.

The geographic boundary 1220 encloses a pre-defined geographic area. Inone embodiment, the tracking system 100 sets the geographic boundary1220, for instance, by selecting a center of the geographic boundary1220, a shape of the geographic boundary 1220, a radius of thegeographic boundary 1220, the location for each segment or edge of thegeographic boundary 1220, and the like. In some embodiments, thetracking system 100 may set multiple geographic boundaries 1220 aroundthe location 1200, which is further described below. The tracking system100 can set a geographic boundary 1220 based on a location 1200 of themobile device 102, historical movement behavior, external information,and/or a communicative range of the tracking device 106. For instance,tracking device 106 may only be able to communicate wirelessly usingBluetooth Low Energy (“BLE”) within a certain range, so the trackingsystem 100 may set the geographic boundary 1220 to stay within the rangeof the tracking device 106 (e.g., the radius of the geographic boundaryis less than or equal to the communicative range of BLE). For example,in some embodiments, if the mobile device 102 is unable to receiveBluetooth advertisements or communications from the tracking device 106,the mobile device 102 may determine that the tracking device 106 isoutside of the geographic boundary (i.e., out of the proximity range forBLE communications) or may scan for the tracking device 106.

The tracking system 100 can set or alter the geographic boundary 1220based on a location 1200 of the mobile device 102. For instance, thetransit infrastructure around a location 1200 can dictate the speed atwhich a user 103 is able to move away from the location 1200, so thetracking system 100 can set the geographic boundary 1220 to correspondto transit infrastructure (i.e., roads, speed limits, stations,alternate routes, traffic, etc.) in a geographic area around thelocation 1200. For example, the tracking system 100 may set thegeographic boundary 1220 at a smaller radius in a suburban area with lowspeed limits than in a rural area with high speed limits. Further, thetracking system 100 may match a location 1200 of the mobile device 102to a known location entity, such as a business, home, school, workplace,recreational area, or the like. In some embodiments, the tracking system100 stores data describing the known location entities, and in otherembodiments, the tracking system 100 retrieves data describing the knownlocation entities from an external mapping system. The tracking system100 can set the geographic boundary 1220 around the location 1200 of themobile device 102 based on size of the matched known location entity,the type of matched location entity, and/or the area around the matchedlocation entity. For example, the tracking system 100 may set thegeographic boundary 1220 at a larger radius for a warehouse than for asmall retail location.

The tracking system 100 can also set or alter the geographic boundary1220 based on the user's historical movement behavior. In an embodiment,the tracking system 100 can set the geographic boundary 1220 based on anobserved daily transit routine of the user 103, including time periodsthe user 103 is usually in transit and locations the user 103 travelsbetween. For example, the tracking system 100 may store data indicatingthat the user 103 is typically in transit from 5 PM to 6 PM based onmovement behavior received from the mobile device 102. Continuing withthis example, if the tracking system set up a geographic boundary 1220around a location 1200 at 4 PM, the tracking system 100 may reduce thesize of the geographic boundary 1220 after 5 PM if the user 103 has notleft the location 1200 by that time. Further, the tracking system 100may subsequently increase the size of the geographic boundary 1220 ifthe time period the user 103 is typically in transit has passed.

The tracking system 100 can set or alter the geographic boundary 1220based on external information from the mobile device 102. Externalinformation includes alerts, notifications, and user activity onapplications on the mobile device 102 other than the applicationassociated with the tracking system 100. For instance, the mobile device102 may receive alerts and notifications from other applicationsindicating upcoming transit opportunities for the user 103, such as acalendar alert or a scheduled meeting. The tracking system 100 may usethese alerts and notifications to alter the geographic boundary 1220.For example, the tracking system 100 may reduce the size of a geographicboundary 1220 if a calendar alert on the mobile device indicates thatthe user 103 has an event coming up in 10 minutes. Further, the trackingsystem 100 can receive external information indicating the user'sactivity on other applications of the mobile device 102, such as anavigation request to a particular location, and set or alter thegeographic boundary 1220 based on this information. In some embodiments,the user 103 may opt into sharing this external information with thetracking system 100.

The tracking system 100 sends configuration instructions to the mobiledevice 102 based on the location 1200 of the mobile device 102. Forexample, like in FIG. 12C, the tracking system 100 sends a configurationinstruction to the mobile device 102 when the tracking system 100detects that the mobile device 102 is outside of apreviously-established geographic boundary 1220 (i.e., the user 103 hasmoved away from the location 1200). The configuration instructionconfigures the mobile device 103 to scan for the tracking device 106 ata particular scanning frequency for a particular interval of time (alsoreferred to as a time interval). For example, the configurationinstruction may configure the mobile device 102 to scan for the trackingdevice 106 once every 4 seconds for 3 minutes. Further, the trackingsystem 100 may determine the scanning frequency and time interval forthe configuration instruction based on historical movement behavior andexternal information. For example, the tracking system 100 may use ahigher scanning frequency for time periods where the user 103 is likelyto be in transit than other time periods. In addition, if the radius ofthe geographic boundary 1220 is too large, the tracking system 100 canconfigure the mobile device 102 to retroactively scan for the trackingdevice 106 during a previous time interval by determining if the mobiledevice 102 detected the tracking device 106 within the previous timeinterval. Further, the tracking system 100 can assess a user's currentmovement behavior via the mobile device 102 to determine how toconfigure the mobile device 102 to scan for the tracking device 106. Forinstance, if the tracking system 100 determines that the user 103 iscurrently moving towards the geographic boundary 1220, the trackingsystem 100 may send a configuration instruction to the mobile device 102to increase the scanning frequency.

The tracking system 100 can instruct, via the configuration instruction,the mobile device 102 to configure the tracking device 106 to advertiseat an increased frequency during the time interval. The mobile device102 may have a higher chance of detecting the tracking device 106 duringthe time interval when the mobile device 102 is scanning while thetracking device 106 is advertising at the increased frequency. Thetracking system 100 may determine an advertising frequency for thetracking device 106 based on the location 1200, historical movementbehavior, and external information. For example, during a time periodthe user 103 is likely to be in transit, the tracking system 100 canconfigure the tracking device 106 to advertise more frequently to themobile device 102. Further, during time periods where the user 103 isunlikely to be moving between locations, the tracking system 100 canconfigure the tracking device 106 to advertise less frequently. Inaddition, the tracking system 100 can reduce the time interval of tocorrespond to how frequently the tracking device 106 is advertising. Forexample, if the tracking device 106 is advertising more frequently, thetracking system 100 may decrease the time interval such that thetracking device 106 advertises the same amount as if the tracking device106 were advertising less frequently over a larger time interval.

In some embodiments, the tracking system 100 can anticipate when theuser 103 is about to leave a location 1200 based on historical movementbehavior and external information and can instruct the mobile device 102to begin scanning for the interval of time, regardless of whether theuser 103 has moved outside of the geographic boundary 1220. Whenever themobile device 102 detects the tracking device, 106, the mobile device102 resets the interval of time and begins scanning again. If the timeinterval passes and the mobile device 102 has not detected the trackingdevice 106, the tracking system 100 may send a smart alert to the mobiledevice 102 indicating that the user 103 does not have possession of thetracking device 106. In some embodiments, the smart alert may alsoinclude information about the last location the tracking device 106 wasdetected at or the last time the tracking device 106 was detected.Otherwise, the mobile device 102 may continue to reset the time intervaluntil the user 103 crosses the geographic boundary 1220 to leave thelocation 1200.

In some embodiments, the tracking system 100 sets multiple geographicboundaries 1220 around the location 1200. Each geographic boundary 1220may be associated with different conditions for when the tracking system100 sends a smart alert. For example, the tracking system 100 can set uptwo geographic boundaries 1220, one larger radius than the other. Whenthe user crosses the first, smaller geographic boundary 1220 as theyleave the location 1200, the tracking system may send the configurationinstruction to the mobile device 102 to begin scanning for the intervalof time. However, in this example, the tracking system 100 only sendsthe smart alert to the mobile device 102 if the time interval has passedwithout tracking device 106 being detected and the user 103 has crossedthe second, larger geofence.

While the mobile device 102 is scanning during the time interval, thetracking system 100 can also receive information from other communitymobile devices 104 that may have detected the tracking device 106 whilescanning near or at the location 1200. If the tracking system 100determines that a community mobile device 104 has detected the trackingdevice 106 within the time interval, the tracking system 100 can sendthe smart alert to the mobile device 102 before the time interval ends.Further, the smart alert may include information indicating the locationof the community mobile device 104 that detected the tracking device 106or the time the community mobile device 104 detected the tracking device106.

FIG. 13 illustrates a flowchart for a method of notifying a user that atracking device may be left behind, according to one embodiment. Atracking system 100 receives 1300 a location 1200 of a tracking device106 from a mobile device 102 of a user at a first time. The mobiledevice 102 is configured to provide a location of the mobile device 102to the tracking system 100 in response to receiving a communication fromthe tracking device 106. Responsive to determining that the mobiledevice 102 have remained at the location 1200 for a threshold amount oftime, the tracking system 100 establishes 1310 a geographic boundary1220 around the location 1200.

The tracking system 100 receives 1320 a new location of the mobiledevice 102, which is outside of the geographic boundary 1220 associatedwith the location 1200. The tracking system 100 sends 1330 aconfiguration instruction to the mobile device 102 to configure themobile device 102 to scan for the tracking device 106 for a timeinterval. If the tracking system 100 detects the tracking device 106within the time interval 1340, the tracking system 100 storesinformation indicating that the user 103 has the tracking device 106 intheir possession. If not, the tracking system 100 sends an indication tothe mobile device 102 that indicating that the user 103 has left thetracking device 106 behind at the location 1200.

Examples: In some embodiments, the tracking system 100 can set up ageographic boundary 1220 at a new location 1200. For example, a user103, who keeps a tracking device 106 on their wallet, is visiting a newtown and enters a restaurant. After the user 103 has been at a table atthe restaurant for 30 minutes, the tracking system 100 establishes ageographic boundary 1220 extending around the restaurant. When the user103 leaves the restaurant, the tracking system 100 sends a configurationinstruction to their mobile device 102 to scan for the tracking device106. If the tracking device is not detected within 3 minutes, thetracking system 100 sends a smart alert to the mobile device 102indicating that the user 103 left the wallet at the restaurant beforethe user 103 has moved too far away from the restaurant, saving the user103 a longer trip back to the restaurant later.

Continuing with the previous example, the user 103 enters a grocerystore and begins walking around the grocery store as they shop withtheir wallet, still communicatively coupled with the tracking device106, in a shopping cart. Based on the location 1200 received from themobile device 102, the tracking system 100 matches the location 1200 toa known grocery store at the location 1200, and establishes a geographicboundary 1220 around the entire grocery store as the user 103 movesabout the store. As traffic increases around the grocery store, thetracking system 100 reduces the size of the geographic boundary 1220,such that the user 103 will be notified if they are missing their walletmore quickly upon leaving the grocery store.

In a different example, a user is out at a local eatery during theirlunch break. The tracking system 100 established a geographic boundary1220 around the local eatery, but determines, via a calendar alert onthe user's mobile device 102, that the user has a meeting back at workcoming up in 15 minutes. Based on this calendar alert, the trackingsystem 100 reduces the size of the geographic boundary 1220 and sends aconfiguration instruction to the mobile device 102 to start scanning atan increased frequency for the user's tracking device 106.

Additional Considerations

The foregoing description of the embodiments of the invention has beenpresented for the purpose of illustration; it is not intended to beexhaustive or to limit the invention to the precise forms disclosed.Persons skilled in the relevant art can appreciate that manymodifications and variations are possible in light of the abovedisclosure.

Any of the devices or systems described herein can be implemented by oneor more computing devices. A computing device can include a processor, amemory, a storage device, an I/O interface, and a communicationinterface, which may be communicatively coupled by way of communicationinfrastructure. Additional or alternative components may be used inother embodiments. In particular embodiments, a processor includeshardware for executing computer program instructions by retrieving theinstructions from an internal register, an internal cache, or othermemory or storage device, and decoding and executing them. The memorycan be used for storing data or instructions for execution by theprocessor. The memory can be any suitable storage mechanism, such asRAM, ROM, flash memory, solid state memory, and the like. The storagedevice can store data or computer instructions, and can include a harddisk drive, flash memory, an optical disc, or any other suitable storagedevice. The I/O interface allows a user to interact with the computingdevice, and can include a mouse, keypad, keyboard, touch screeninterface, and the like. The communication interface can includehardware, software, or a combination of both, and can provide one ormore interfaces for communication with other devices or entities.

Some portions of this description describe the embodiments of theinvention in terms of algorithms and symbolic representations ofoperations on information. These algorithmic descriptions andrepresentations are commonly used by those skilled in the dataprocessing arts to convey the substance of their work effectively toothers skilled in the art. These operations, while describedfunctionally, computationally, or logically, are understood to beimplemented by computer programs or equivalent electrical circuits,microcode, or the like. Furthermore, it has also proven convenient attimes, to refer to these arrangements of operations as modules, withoutloss of generality. The described operations and their associatedmodules may be embodied in software, firmware, hardware, or anycombinations thereof.

Any of the steps, operations, or processes described herein may beperformed or implemented with one or more hardware or software modules,alone or in combination with other devices. In one embodiment, asoftware module is implemented with a computer program productcomprising a computer-readable medium containing computer program code,which can be executed by a computer processor for performing any or allof the steps, operations, or processes described.

Embodiments of the invention may also relate to an apparatus forperforming the operations herein. This apparatus may be speciallyconstructed for the required purposes, and/or it may comprise ageneral-purpose computing device selectively activated or reconfiguredby a computer program stored in the computer. Such a computer programmay be stored in a non-transitory, tangible computer readable storagemedium, or any type of media suitable for storing electronicinstructions, which may be coupled to a computer system bus.Furthermore, any computing systems referred to in the specification mayinclude a single processor or may be architectures employing multipleprocessor designs for increased computing capability.

Embodiments of the invention may also relate to a product that isproduced by a computing process described herein. Such a product maycomprise information resulting from a computing process, where theinformation is stored on a non-transitory, tangible computer readablestorage medium and may include any embodiment of a computer programproduct or other data combination described herein.

Finally, the language used in the specification has been principallyselected for readability and instructional purposes, and it may not havebeen selected to delineate or circumscribe the inventive subject matter.It is therefore intended that the scope of the invention be limited notby this detailed description, but rather by any claims that issue on anapplication based hereon. Accordingly, the disclosure of the embodimentsof the invention is intended to be illustrative, but not limiting, ofthe scope of the invention, which is set forth in the following claims.

What is claimed is:
 1. A computer-implemented method comprising:receiving, at a central tracking system, a location of a mobile deviceof a user, the mobile device configured to provide a location of themobile device to the central tracking system in response to receiving acommunication from a tracking device; responsive to determining that themobile device has remained at the location for a threshold amount oftime, establishing, by the central tracking system, a geographicboundary around the location, the geographic boundary associated withthe tracking device; receiving, at the central tracking system, a newlocation of the mobile device, the new location located outside of thegeographic boundary; sending, to the mobile device, a configurationinstruction to configure the mobile device to scan for the trackingdevice for an interval of time; responsive to the mobile devicedetecting the tracking device within the interval of time, storing, atthe central tracking system, information indicating that the user is inpossession of the tracking device; and responsive to not detecting thetracking device during the interval of time, sending an indication tothe mobile device indicating that the user has left the tracking devicebehind.
 2. The computer-implemented method of claim 1, wherein theindication is sent to the mobile device further responsive todetermining that the mobile device is outside a second geographicboundary, the second geographic boundary corresponding to a largergeographic region around the location than the geographic regioncorresponding to the geographic boundary.
 3. The computer-implementedmethod of claim 1, further comprising: during the interval of time,receiving, at the central tracking system, the location of the trackingdevice from a second mobile device of a second user, the location of thetracking device comprising a location within the geographic boundary;and responsive to receiving the location of the tracking device from thesecond mobile device, sending the indication to the mobile deviceindicating that the user has left the tracking device behind.
 4. Thecomputer-implemented method of claim 1, wherein a radius of thegeographic boundary is selected based on a communicative range of thetracking device.
 5. The computer-implemented method of claim 1, furthercomprising: accessing, by the central tracking system, historicalmovement data for the mobile device of the user, the historical movementdata indicating time periods during which the user is in transit; andresponsive to a current time corresponding to a time period during whichthe user is in transit, sending, to the mobile device, the configurationinstruction, wherein the configuration instruction further configuresthe mobile device to scan for the tracking device at an increasedfrequency.
 6. The computer-implemented method of claim 5, furthercomprising: responsive to sending the configuration instruction,reducing a radius of the geographic boundary.
 7. Thecomputer-implemented method of claim 1, further comprising: accessing,by the central tracking system, mobile device data of the mobile device,the mobile device data describing upcoming transit opportunities andincluding calendar alerts, navigation requests, and scheduled meetings;and responsive to the mobile device data indicating an upcoming transitopportunity, sending, to the mobile device, the configurationinstruction, wherein the configuration instruction further configuresthe mobile device to scan for the tracking device at an increasedfrequency.
 8. The computer-implemented method of claim 1, furthercomprising: sending, to the mobile device, a second configurationinstruction to configure the mobile device to scan for the trackingdevice at an increased frequency and resetting the interval of timeduring which the mobile device is configured to scan for the trackingdevice.
 9. A non-transitory computer-readable storage medium comprisinginstructions executable by a processor, the instructions comprising:instructions for receiving, at a central tracking system, a location ofa mobile device of a user, the mobile device configured to provide alocation of the mobile device to the central tracking system in responseto receiving a communication from a tracking device; responsive todetermining that the mobile device has remained at the location for athreshold amount of time, instructions for establishing, by the centraltracking system, a geographic boundary around the location, thegeographic boundary associated with the tracking device; instructionsfor receiving, at the central tracking system, a new location of themobile device, the new location located outside of the geographicboundary; instructions for sending, to the mobile device, aconfiguration instruction to configure the mobile device to scan for thetracking device for an interval of time; responsive to the mobile devicedetecting the tracking device within the interval of time, instructionsfor storing, at the central tracking system, information indicating thatthe user is in possession of the tracking device; and responsive to notdetecting the tracking device during the interval of time, instructionsfor sending an indication to the mobile device indicating that the userhas left the tracking device behind.
 10. The non-transitorycomputer-readable storage medium of claim 9, wherein the indication issent to the mobile device further responsive to determining that themobile device is outside a second geographic boundary, the secondgeographic boundary corresponding to a larger geographic region aroundthe location than the geographic region corresponding to the geographicboundary.
 11. The non-transitory computer-readable storage medium ofclaim 9, the instructions further comprising: during the interval oftime, instructions for receiving, at the central tracking system, thelocation of the tracking device from a second mobile device of a seconduser, the location of the tracking device comprising a location withinthe geographic boundary; and responsive to receiving the location of thetracking device from the second mobile device, instructions for sendingthe indication to the mobile device indicating that the user has leftthe tracking device behind.
 12. The non-transitory computer-readablestorage medium of claim 9, wherein a radius of the geographic boundaryis selected based on a communicative range of the tracking device. 13.The non-transitory computer-readable storage medium of claim 9, theinstructions further comprising: instructions for accessing, by thecentral tracking system, historical movement data for the mobile deviceof the user, the historical movement data indicating time periods duringwhich the user is in transit; and responsive to a current timecorresponding to a time period during which the user is in transit,instructions for sending, to the mobile device, the configurationinstruction, wherein the configuration instruction further configuresthe mobile device to scan for the tracking device at an increasedfrequency.
 14. The non-transitory computer-readable storage medium ofclaim 13, the instructions further comprising: responsive to sending theconfiguration instruction, instructions for reducing a radius of thegeographic boundary.
 15. The non-transitory computer-readable storagemedium of claim 10, the instructions further comprising: instructionsfor accessing, by the central tracking system, mobile device data of themobile device, the mobile device data describing upcoming transitopportunities and including calendar alerts, navigation requests, andscheduled meetings; and responsive to the mobile device data indicatingan upcoming transit opportunity, instructions for sending, to the mobiledevice, the configuration instruction, wherein the configurationinstruction further configures the mobile device to scan for thetracking device at an increased frequency.
 16. The non-transitorycomputer-readable storage medium of claim 10, the instructions furthercomprising: sending, to the mobile device, a second configurationinstruction to configure the mobile device to scan for the trackingdevice at an increased frequency and resetting the interval of timeduring which the mobile device is configured to scan for the trackingdevice.
 17. A computer system comprising: a computer processor; and anon-transitory computer-readable storage medium storage instructionsthat when executed by the computer processor perform actions comprising:receive, at a central tracking system, a location of a mobile device ofa user, the mobile device configured to provide a location of the mobiledevice to the central tracking system in response to receiving acommunication from a tracking device; responsive to determining that themobile device has remained at the location for a threshold amount oftime, establish, by the central tracking system, a geographic boundaryaround the location, the geographic boundary associated with thetracking device; receive, at the central tracking system, a new locationof the mobile device, the new location located outside of the geographicboundary; send, to the mobile device, a configuration instruction toconfigure the mobile device to scan for the tracking device for aninterval of time; responsive to the mobile device detecting the trackingdevice within the interval of time, store, at the central trackingsystem, information indicating that the user is in possession of thetracking device; and responsive to not detecting the tracking deviceduring the interval of time, send an indication to the mobile deviceindicating that the user has left the tracking device behind.
 18. Thecomputer system of claim 17, wherein the indication is sent to themobile device further responsive to determining that the mobile deviceis outside a second geographic boundary, the second geographic boundarycorresponding to a larger geographic region around the location than thegeographic region corresponding to the geographic boundary.
 19. Thecomputer system of claim 17, the actions further comprising: during theinterval of time, receive, at the central tracking system, the locationof the tracking device from a second mobile device of a second user, thelocation of the tracking device comprising a location within thegeographic boundary; and responsive to receiving the location of thetracking device from the second mobile device, send the indication tothe mobile device indicating that the user has left the tracking devicebehind.
 20. The computer system of claim 17, wherein a radius of thegeographic boundary is selected based on a communicative range of thetracking device.